课程
/后端开发
/Java
/Java入门第三季
如何才能让两个对象的name都变成空?输入name时至少要输入字吧。this.name==null我就更不懂了,Course的对象的name为啥会是null?这段代码的意义是什么?
2016-12-21
源自:Java入门第三季 6-1
正在回答
应该你Course类的name属性为null(可能是初始值),而你传进来的类型又是Course的一个实例且这个实例的name属性也为null,这种情况下就是为相等
专注当下4143035 提问者
这节课我反反复复听了一个小时,就是搞不懂,为什么要考虑NULL这种情况。既然CONTAINS方法是集合中的每个对象调用EQUALS函数,也就是说对象的存在是方法调用的前提,那对象怎么可能会是NULL呢?
OBJCET==NULL,我说下我的理解。首先情调下这里 “OBJCTC==NULL” 用的是“==”,说明比较的是内存地址,假如集合中有数学,语文,英语,则内存中只有数学、语文和英语的内存地址,没有物理的内存地址,而恰巧此时用户输入了“物理”,则此时 物理==NULL,也就是说物理这门课不在集合中存在,自然返回FALSE。
这只是考虑到异常情况,这里是没用到
==是判断
this.name == null 是判断 本类的name属性的值是否为null
举报
Java中你必须懂得常用技能,不容错过的精彩,快来加入吧
2 回答为什么但this.name==null时,如果cource.name==null就返回true?
2 回答为什么先判断 this.name==null ? 不能先判断 obj.name==null 吗?
2 回答这行代码是什么意思
3 回答st == null是什么意思
5 回答这行代码的意义能解释下吗