equals的用法

 

package cn.enn;

public class Logic {

 /**
  * @author  zhangxiaojun
  * @version Aug 31, 2011  3:52:40 PM
  * @param args
  * TODO:
  */
 static String str ;
 public static void main(String[] args) {
  // TODO Auto-generated method stub
 
//  if(str!=null & !str.equals("")){
//   System.out.println(str);
//  }else{
//   System.out.println("cc   "+str);
//  }
  System.out.println("".equals(null));
 }

}

分析:如上代码 写成if(str!=null & !str.equals("")){   则 报错:Exception in thread "main" java.lang.NullPointerException
 at cn.enn.Logic.main(Logic.java:15)

如果写成 if(str!=null & !"".equals(str)){  则不报错 运行正常。

原因分析:equals的语法格式:  String的equals(Objecet  obj)方法, 括号里面只要是个object就可以。如果str=null那么 就不能正确执行str.equals("") 因为null不是String类型,相反"".equals(null)  则可以。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值