java中的==和equals或 !=和!xxx.equals
看如下代码
while(!oneprString.equals("end"))
和
while(oneprString!="end")
你会发现!=的循环是个死循环
这是因为==和!=不但比较值,还比较数据类型
对于end来说是栈指向堆中的字符串类型对象,而oneprString是栈指向堆中的对象,对象再指向一个字符串类型对象
从数据类型的角度来说,二者的书库类型不一样,所以while的条件一直是false。导致死循环。
...
原创
2020-06-12 10:24:40 ·
234 阅读 ·
0 评论