关于String类的一些理解
2014-11-04 14:11
330 查看
一、了解==和equals的区别
二、关于String类
== 如果比较的是对象,则是比较的该对象引用的地址,如果比较的是简单的数值类型,则比较的 是实际的值。 equals 在object中的定义如下: Object类的 equals 方法实现对象上差别可能性最大的相等关系;即,对于任何非空引用值 x和 y,当且仅当 x和 y引用同一个对象时,此方法才返回 true( x == y具有值 true)。 不同的封装类继承了Object类,可能出现不同的方法重写(对equals()方法的重写),则会出现不同的结果 Integer类中的equals定义为:比较此对象与指定对象。当且仅当参数不为 null,并且是一个与该对象包含相同 int值的 Integer对象时,结果为 true。 例如,有如下代码: 出现的结果为: |
s/s1指向了一个常量,而在串池中,同一个常量只会保存一次,所以s和s1指向的是同一个对象 而s3指向的是一个常量加上一个变量组成的对象,因此此对象会存放在堆区,所以不是同一个对象 |
相关文章推荐
- 关于内核中spinlock的一些个人理解
- 关于VLAN的一些理解(图文并茂,推荐新手阅读)续1
- 关于SAX,DOM,JAXP,JDOM,DOM4J的一些理解
- 关于异常的一些理解
- 关于java反射的一些理解
- 关于编码的一些认识和理解(Kemin原创)
- java String 类的一些理解 关于==、equals、null
- 关于多重继承的一些理解
- 对关于字符驱动的一些重要数据结构(file_operations, file, inode, cdev)的理解
- 关于java包装类的一些理解
- 关于VLAN的一些理解(图文并茂,推荐新手阅读)续2
- 关于SAX,DOM,JAXP,JDOM,DOM4J的一些理解
- 关于“代数结构(algebraic structure)”的一些原创性的理解。
- 关于unicode、utf8、utf16、gb2312和GBK的一些理解
- 关于委托的一些理解
- 关于VLAN的一些理解(图文并茂,推荐新手阅读)
- 关于bitmap的一些理解
- 关于最新出台的政策的一些理解
- 关于SAX,DOM,JAXP,JDOM,DOM4J的一些理解
- C++中关于const的一些理解 (原作于08年11月20日)