先放上一段代码:
Java代码
public static void main(String args[]) throws Exception{
String str = null;
// if("".equals(str)){
if(str instanceof String){
System.out.println("aaa");
}else{
System.out.println("bbb");
}
}
执行结果为:bbb.
从结果看来:
1.null值什么都不是.即使当初申明了变量类型(如:String str = null).
2.instanceof 是根据变量的实例类型来判断,而与变量申明时的类型并无多大关系.
3.可以解释为什么str.equals("")会报异常,而 "".equals(str) 不会报异常(str为null值)。大家根据前面2点,结合java源代码可以理解这一点。这也是我要写这一小段文章的原因。
考试大温馨提示:本内容来源于网络,仅代表作者个人观点,与本站立场无关,仅供您学习交流使用。其中可能有部分文章经过多次转载而造成文章内容缺失、错误或文章作者不详等问题,请您谅解。如有侵犯您的权利,请联系我们,本站会立即予以处理。
编辑特别推荐:
Java中基本数据类型与应用
Servlet中的八大Listener
40个轻量级JavaScript库介绍
① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;
② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。