0

重複の可能性:
Java で文字列を比較するにはどうすればよいですか?
Java String.equals と ==

私はSeleniumとJavaが初めてです。

以下を試して、姓のフィールド値を私が提供したものと比較しました。

String lastname=selenium.getValue("//*[@id='lastName']");
System.out.println(lastname);
assertTrue (lastname == "xxx");

失敗し続けています。

文字通り、Eclipseの助けを借りて最後の行を変更しようとしました(試行錯誤のみ)

assertTrue("lastname.equals("xxx")); 

正常に動作しています...最初のケースで失敗したのはなぜですか? == は文字列を比較できませんか?

4

5 に答える 5

2

簡単な答え:==同じオブジェクト.equalsをチェックして同じ値をチェックします。

Javaで文字列を比較するにはどうすればよいですか?の詳細情報

于 2013-01-03T08:50:30.530 に答える
0

equals関数は、の実際の内容をチェックしますlastname==オペレーターは、オブジェクトへの参照が等しいかどうかを確認します。

于 2013-01-03T08:50:43.027 に答える
0

ご想像のとおり、文字列をJavaと比較するには、equals()を使用する必要があります。

于 2013-01-03T08:51:05.490 に答える
0

文字列で使用する場合、実際にはポインタ(または実際には参照の同等性)を比較==しています。つまり、オブジェクトのコンテンツではなく、2つのオブジェクトが同じであるかどうかをテストしています。

于 2013-01-03T08:51:18.407 に答える
0

文字列の等価性を比較するには、 equals() メソッドを使用します。Java には 2 つの比較方法があります。1 つは「==」演算子で、もう 1 つは「equals()」メソッドです。「==」は文字列オブジェクトの参照値を比較しますが、equals() メソッドは java.lang.Object クラスに存在します。このメソッドは、文字列オブジェクトの内容を比較します。

于 2013-01-03T08:52:00.307 に答える