一个变量,一个常量,用equals()方法比较,让咱们,看看到底是常量放前面好啊,还是变量放前面好
2017-09-19 14:08
543 查看
转载自:http://www.cnblogs.com/baby-zhude/p/4218846.html
其实说白了,如果是两个都是变量,那就放哪都行没啥区别;(有点废话了)
现在主要就是有一个是常量,大家应该知道吧,equals()方法是在Object类里定义的,也就是说任何对象都可以调用equals()方法,但是对象在调用方法的时候,如果对象为null那系统运行就会报空指针异常;出现异常这显然是我们不愿意看到的;
-------------------------------------------------------------------------------------------------
现在看这题,前面说了,如果把变量放在前面也就相当于是调用了这个变量的equals方法,那么如果此变量为空的时候就会报NullPointException了,所以肯定是把常量放前面会好些了啊;这样,我们就不用做空指针的异常处理了
--------------------------------------------------------------------------------------------------
这里再说一点,可能有的同学会想,为什么把变量放在括号里就不会出现空指针异常呢,呵呵,其实大家想想,equals()方法是不是可以比较一个变量是不是等于空啊,就是 s.equals(null); 是不是啊,括号里直接写null都可以了,还怕变量为null吗
其实说白了,如果是两个都是变量,那就放哪都行没啥区别;(有点废话了)
现在主要就是有一个是常量,大家应该知道吧,equals()方法是在Object类里定义的,也就是说任何对象都可以调用equals()方法,但是对象在调用方法的时候,如果对象为null那系统运行就会报空指针异常;出现异常这显然是我们不愿意看到的;
-------------------------------------------------------------------------------------------------
现在看这题,前面说了,如果把变量放在前面也就相当于是调用了这个变量的equals方法,那么如果此变量为空的时候就会报NullPointException了,所以肯定是把常量放前面会好些了啊;这样,我们就不用做空指针的异常处理了
--------------------------------------------------------------------------------------------------
这里再说一点,可能有的同学会想,为什么把变量放在括号里就不会出现空指针异常呢,呵呵,其实大家想想,equals()方法是不是可以比较一个变量是不是等于空啊,就是 s.equals(null); 是不是啊,括号里直接写null都可以了,还怕变量为null吗
相关文章推荐
- java面试题解惑:当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
- equals方法变量和常量位置区别
- 当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
- equals变量在前面或者在后面有什么区别吗?这是一个坑点
- 多态--父子间方法和变量的调用,到底调用的是父亲还是儿子
- .net里Equals 数字变量与数字常量的比较问题
- 自己写了一个js,但是最终不能控制住最后后的提交,前面的还是比较完美,大家看到后,能帮我解决一下吗?
- 当一个对象被当做参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
- equals方法变量和常量位置区别
- JavaScript之区别一个变量是数组还是变量的三种方法
- 练习1-20:请编写程序detab,将输入中的制表符替换成适当数目的空格,适空格充满到下一个制表符中止的地方。假设制表符终止位的位置是固定的,比如每隔n列就会出现一个制表符终止位。n应该作为变量还是符号常量呢?
- 当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
- 一没考虑单词重复,二没考虑先输入空格,三没考虑后面连续输空格,方法见空格将空格前面的当成一个字符串,字符串比较是否相同,再统计
- 当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
- 多态--父子间方法和变量的调用,到底调用的是父亲还是儿子
- Java方法重写到底调用哪儿一个方法,到底用本类还是父类的成员变量
- Java - 当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
- 当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
- 判断是否是同一人的方法——equals()?在Person类中提供一个比较的方法compare()返回boolean值?对象自己和自己比?
- java面试题:当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?