"".equal(String)与Stirng.equal("")的区别_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > "".equal(String)与Stirng.equal("")的区别

"".equal(String)与Stirng.equal("")的区别

 2013/8/24 0:56:40  happy_tao_cool  程序员俱乐部  我要评论(0)
  • 摘要:publicclassEqualDemo{publicstaticvoidequalByStringInFront(Stringstr){try{if(str.equals("")){System.out.println("字符串变量在前面的调用equal方法,返回true");}}catch(NullPointerExceptione){e.printStackTrace();}}publicstaticvoidequalByConstantInFront(Stringstr){if(""
  • 标签:区别
class="java" name="code">public class EqualDemo {

	public static void equalByStringInFront(String str){
		try{
			if(str.equals("")){
				System.out.println("字符串变量在前面的调用equal方法,返回true");
			}
		}catch(NullPointerException e){
			e.printStackTrace();
		}
	}
	
	public static void equalByConstantInFront(String str){
		if("".equals(str)){
			System.out.println("字符串常量在前面的调用equal方法,返回true");
		}else{
			System.out.println("字符串常量在前面的调用equal方法,返回false");
		}
	}
	
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		String str = "";
		String str2 = null;
		EqualDemo.equalByStringInFront(str);
		EqualDemo.equalByConstantInFront(str);
		
		EqualDemo.equalByStringInFront(str2);
		EqualDemo.equalByConstantInFront(str2);
	}
	
}


运行以上代码,输出结果:

字符串变量在前面的调用equal方法,返回true
字符串常量在前面的调用equal方法,返回true
java.lang.NullPointerException
	at com.travelsky.equal.frontandback.EqualDemo.equalByStringInFront(EqualDemo.java:7)
	at com.travelsky.equal.frontandback.EqualDemo.main(EqualDemo.java:32)
字符串常量在前面的调用equal方法,返回false


当输入的string变量为空的话,string.equal("")方式的调用就会报出空指针异常。所以在进行字符串相等比较的时候,除非两个比较的参数都是变量,否则建议使用“”.equal(string)方法
上一篇: 《阿勇java建站教程》1.2java建站 下一篇: 没有下一篇了!
发表评论
用户名: 匿名