重複の可能性:
Java String.equals と ==
Java で文字列を宣言するときに == を使用してこの文字列を比較できず、常に false になるのに、最初から文字列を初期化すると true になるのはなぜですか?
例えば :
import java.util.Scanner;
public class MyString {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String s = input.nextLine();
if(s=="Hello")
System.out.println("Hello");
String d = "Hello";
if(d=="Hello")
System.out.println("Hello");
}
}
この動作の説明は何ですか?