2022
05-24
05-24
浅谈Java包装类型Long的==操作引发的低级bug
目录背景两个Long 类型的 ==对Collections.EMPTY_SET进行add引发的异常Collections的空集合使用注意事项启示录背景一个简单的列表检索功能,列表元素有一个Long类型的属性,遍历过程中犯了一个低级错误,导致功能流程始终错误,本文将分享两个低级错误引发的bug。两个Long 类型的 ==查找某个元素A在列表B中对应的对象的时候,根据元素主键查询,主键类型为包装类型Long,遍历流程如下:for(MyData...
继续阅读 >
关于String类型的等值比较和内容比较,是学习java甚至任何编程语言所共同的常见问题,理解String类型的等值比较和内容比较也是面试经常问到的问题。String类型的等值比较和内容比较字符串等值比较publicfinalclassStringimplementsjava.io.Serializable,Comparable<String>,CharSequence{/**Thevalueisusedforcharacterstorage.*/privatefinalcharvalue[];publicbooleanequals(ObjectanObject){...
简单介绍equals方法是java.lang.Object类的方法有两种用法说明:一、对于字符串变量来说,使用“==”和“equals()”方法比较字符串时,其比较方法不同。1、“==”比较两个变量本身的值,即两个对象在内存中的首地址。(java中,对象的首地址是它在内存中存放的起始地址,它后面的地址是用来存放它所包含的各个属性的地址,所以内存中会用多个内存块来存放对象的各个参数,而通过这个首地址就可以找到该对象,进而可以找到该对象的各...