重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

いつもお世話になっております。
開発環境はeclipse SDK。OSはWInXP。
現在JSPより送られてきた値のチェックを行うプログラミングをしているのですがうまくいきません。
JSP側で"すべて"という文字列を送信してサーブレットでその文字列を受け取り、if文で判定を行おうとしています。
デバッグでみるとサーブレットにきちんと"すべて”の文字が送られてきています。
サーブレット内のif文をどうしてもとおりません。
問題のif文は以下のような感じです。

String msg = request.getParameter("msg");
if(msg == "すべて")
msg = "すべてが入力されました";
request.setAttribute("msg",msg);

JSPから送られている"すべて"とデバッグで調べても同じに見えます。

型がおかしいのかと思い、ためしに以下のようなことをしてみました。

String msg = request.getParameter("msg");
String chekmsg = "すべて";
if(msg == chekmsg)
msg ="すべてが入力されました";
request.setAttribute("msg",msg);

としても結果が同じです。
残る可能性は、デバッグモードで見ると、msgとchekmsgのhashの数字が違うところぐらいです。
お分かりなる方がいましたらよろしくお願いいたします。

A 回答 (1件)

文字列の比較はequalsメソッドを使うのですが、ご存知でしたか?


初歩の初歩なので、覚えておくと便利です。
    • good
    • 0
この回答へのお礼

まことにありがとうございます^^;
初心者一同で大声を出してしまいましたw
本当に初歩的が皆顔を赤らめてしまいました。
ありがとうございます。

お礼日時:2007/05/28 15:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!