-3
public class EqualsCheck {
/**
* @param args
*/
public static void main(String[] args) {
Scanner sc= new Scanner(System.in);
Scanner sc1= new Scanner(System.in);
String s1 = sc.next();
String s2 = sc1.next();
equalCheck(s1,s2);
}
private static void equalCheck(String s1, String s2) {
//Using Assignment
System.out.println(s1 == s2);
//Using equals
System.out.println(s1.equals(s2));
//Printing HashCode
System.out.println("s1 :"+s1.hashCode()+" s2: "+s2.hashCode());
}
}
переданная строка являются:равенства оператор bevaiour динамически переданных значений строк в Java
s1 = "abc";
s2 = "abc";
Если я делаю s1==s2
, он возвращает false
. Почему объединение строк здесь не работает.
s1.equals (s2) возвращает true, как ожидалось. – ravikant
Я голосую, чтобы закрыть этот вопрос не по теме, потому что на этот вопрос был дан ответ на SO за миллион раз до –
«Использование Assignment» здесь нет назначения. Это использует * identity *. –