如果是数字比较就没有区别,如果是字符就要用equal了.字符比较不能用==.
null放前放后没有区别!
注意:
equals
进行判空的时候,空""
放前面,不然会报空指针
一、基础知识
String str1 = null;
str1引用为空,它没有地址,它是一个没有被实例化的对象
String str2 = "";
str2引用为空字符串,它有地址,它是被实例化的对象,值为空而已。
""
表示为空字符串,已经被实例化,开辟的新的空间,有地址 值为空
二、判断是否为空
1、如果是string对象是null,用 == 来判断,否则会抛出异常
java.lang.NullPointerException
2、如果是空字符串,用来equals() 判断,
"".equals(str)
“ == ”
操作在对String这种引用数据类型来说,比较的是地址
“equals()"
判断的是内容
3、综合来说,判断字符串是否为空
if (context != null && !context.trim().equals("")) {
trim():返回一个去掉前后空格之后的 字符串(leading and trailing whitespace)
三、判断是否相等
str2.equals(str1)
“ ==
”操作在对String这种引用数据类型来说,比较的是地址
“equals()"
判断的是内容
四、测试
1、错误System.out.println(
str1.equals(str2)
);
public static void main(String[]