“==”是Java中的运算符,它比较的内容是两个对象的指针,也就是实际对象的地址。
equals方法比较的是字符串的内容。
例外
String userCount = userID.getText().toString();
String passwordText = password.getText().toString();
String suserCount = "12345";
String spasswordText = "000000";
int a = userCount.equals("12345")?1:0;
int b = userCount.equals(suserCount)?1:0;
int c = suserCount == "12345"?1:0;
int d = userCount == "12345"?1:0;
首先 d的值为0,但a的值为1 因为上述原因。
但是c=1,是因为java编译器有一个叫字符串常量池的存储区域,由于String suserCount = "12345"这条语句编译之后,“12345”就会存储在这个字符串常量池中,同时"12345"也指示该地方,所c=1.