String str = null;if(str==null){
str = "a";
}
与
if(str.equals(null)){str = "b";
}这两个if有什么不同?分别会出现什么结果?说说它们为什么会分别出现这种结果????
str = "a";
}
与
if(str.equals(null)){str = "b";
}这两个if有什么不同?分别会出现什么结果?说说它们为什么会分别出现这种结果????
解决方案 »
- 关于时间的一点问题 请各位大大看下~
- (编译或者反射机制问题)如何获取运行时类型和对象,高分求解
- socket通信问题
- 同一页面有n个(n值不确定)同名的按钮,form怎么接收?
- Java里面如何显示"÷"这个符号?
- 对父类成员的引用求教
- 请教关于修饰符顺序的问题
- Runtime.getRuntime().exec 可以执行.bat文件么?不能的话怎么才能执行??
- 如何使非模式对话框 (showModelessDialog())隐藏在主窗口背后?
- 请用过jakarta-ant-1.4.1这个编译软件。
- suspend()自动翻页的线程后,resume()如何让线程继续呢??
- 一个构造函数的小问题, 请高手明示:
str.equals如果str是null的话,就会出空指针异常了,因为空对象不能用。操作符
}
这个主要得看String的equals方法public boolean equals(Object anObject) {
if (this == anObject) {
return true;
}
if (anObject instanceof String) {//看这句 null instanceof String 返回的是假,所以返回假
String anotherString = (String)anObject;
int n = count;
if (n == anotherString.count) {
char v1[] = value;
char v2[] = anotherString.value;
int i = offset;
int j = anotherString.offset;
while (n-- != 0) {
if (v1[i++] != v2[j++])
return false;
}
return true;
}
}
return false;
}if (anObject instanceof String) {//看这句 null instanceof String 返回的是假,所以返回假