- - PR -
文字列の比較
«前のページへ
1|2|3
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2003-07-26 18:06
初期化にかかる時間を計っている(処理前と処理後の時間差を取っている)だけなので、 順番を換えても結果は変わらないと思いますが、いかがでしょうか? (結果が若干変わっても、それはCPU側の計算処理による微妙な差だと思います!) | ||||
|
投稿日時: 2003-07-27 18:30
元の質問は、
ということですが、これは、 - 可読性 : ソースコード上の可読性から見た側面 - 実行効率 : 実行効率から見た側面 の2つの側面があると思います。 [ メッセージ編集済み 編集者: LED 編集日時 2003-07-28 01:05 ] | ||||
|
投稿日時: 2003-07-27 19:26
しまった。
LEDさんじゃなくってzaxx_MDさんでしたね。失礼しました。 やっぱり、==が参照変数の一致を調べるという今の言語仕様は失敗だったんじゃないですかね。どのプロジェクトのソースをgrepしてみても、文字列を==で比較するバグが発見できなかった試しは無いし(もっとも==で比較しても良いケースがあるから、これまたやっかいなんですが)。 しろうと考えですが、a==bは、(a!=null&&a.equals(b))にコンパイルして、今の==の役には、"isidentical"みたいな演算子を導入した方が良かったんじゃないかなぁ。 | ||||
|
投稿日時: 2003-07-27 21:35
>LEDさん
念のため確認ですが、==とequals()が同じ結果を返すなんて思ってないですよね? | ||||
|
投稿日時: 2003-07-28 09:34
こんにちわ。 順番も変えてやってみましたが、結果に差は出ませんでした。 | ||||
|
投稿日時: 2003-07-28 18:01
どうしても == で比較したいのであれば
String#intern() を使用して if (str.intern() == "") {} if (str.intern() == "hoge") {} とでもしてください。 未だに見たことありませんし、今後もないでしょうが。 | ||||
«前のページへ
1|2|3
