java如何return多個(gè)值 Java中,兩個(gè)new的對(duì)象對(duì)==做比較,可以返回true嗎?
Java中,兩個(gè)new的對(duì)象對(duì)==做比較,可以返回true嗎?首先,給出答案。將兩個(gè)新對(duì)象與==進(jìn)行比較將不為真。結(jié)果一定是假的!要理解原因,首先要知道Java是一種面向?qū)ο蟮恼Z言。除了八種基本類型(
Java中,兩個(gè)new的對(duì)象對(duì)==做比較,可以返回true嗎?
首先,給出答案。將兩個(gè)新對(duì)象與==進(jìn)行比較將不為真。結(jié)果一定是假的
!要理解原因,首先要知道Java是一種面向?qū)ο蟮恼Z言。除了八種基本類型(byte、short、int、long、double、float、Boolean、char)之外,其余的都以對(duì)象的形式存儲(chǔ)在內(nèi)存堆中;
在了解JVM如何調(diào)用對(duì)象之后,您還需要知道在Java中==比比較兩個(gè)對(duì)象之間的引用是否相等更好。因此,用==比較兩個(gè)新對(duì)象將不是真的
!如果要比較兩個(gè)對(duì)象是否相等,可以同時(shí)重寫對(duì)象的equals()方法和對(duì)象的hashcode()方法,因?yàn)楫?dāng)您將對(duì)象存儲(chǔ)在集合容器(如map)附近時(shí),首先比較對(duì)象的hashcode值,然后調(diào)用對(duì)象的equals方法