たなかのJava日記

どんなことをやったか(学んだか)、どこで詰まったか(わからなかったか)、どこで工夫したかの記録です。

Day7,オブジェクトの比較はequalsメソッド

■時間

1.5時間

 

■行ったこと

1,プロになるJava書籍p.128~132

・文字列などの比較 

2,アルゴリズムを、はじめようp62~66

 

■コメント

木曜になると疲れがでてきて進捗がいまいちです。

 

■その他

特になし

 

■課題
これまでと変わらず

・前値インクリメントと後置インクリメントの説明

・参照型について

JDKJVMの説明、位置づけ

 

--------------------

 

以下メモです

■文字列の比較
"test" == "TEST"
結果⇒false

"test" == "test"
結果⇒false

 var str = "TEST".toLowerCase()
str == "test"
結果⇒false

変数strが「test」という文字列を保持しているのに、==演算子での「test」との比較がfalseになってしまいました。
これは、文字列などのオブジェクトの==演算子による比較は、「同じオブジェクトであるか」という比較になります。
すなわち、「同じ値であるか」という比較ではありません。
オブジェクトの示す値が等しいかどうかを判定するにはequalsメソッドを使用します。

str.equals("test")
結果⇒true

また、日付時刻でも同様です。
イメージがつかめるまでは難しいので、「オブジェクトの比較は==でななくequals」と覚えておきます。