比较基本数据类型相等时使用==,在字符串比较相等时使用equals,如果使用==则两个字符串比较的是地址值,如:
String str1="abc";
String str2="abc";
String str3="ab";
str3=str3+"c";
str1==str2得到true;java创建String对象时若内存地址中存在相同的的值则指向同一地址
str2==str3得到false;因为str3创建时值与str1不同所以分配不同地址
当判断字符串为空时使用equals,判断字符串为nll使用==表示字符串引用空地址不存在
|