メイン | 作成したjarファイルから外部のjarファイルを参照できない »

2004年12月15日

StringBuffer の文字列比較

非常に単純なことなのですが、JAVA を始めた際にしばらく気づかず苦労しました。
StringBuffer クラスのインスタンスの文字列を比較しようとした場合、 たとえば "aaa" という文字と等しいという条件を判断しようとした際

StringBuffer sb = new StringBuffer("aaa");
if(sb.equals("aaa")){ ... }

とすると条件式は false になってしまいます。 なぜかというと、sb は StringBuffer クラスなのですが "aaa" は String クラスのため、等しくないと判断されてしまうのです。
この場合

if(sb.toString().equals("aaa")){ ... }

とするとよいようです。

投稿者 kyohei : 2004年12月15日 22:17

トラックバック

このエントリーのトラックバックURL:
http://240k.jp/cgi-bin/MT333/mt-tb.cgi/101

コメント

コメントしてください




保存しますか?