Integer num1 = 1; Integer num2 = 1;String str1 = abc; String str2 = abeSystemoutprint num1 == num2Systemoutprint str1== str2输出什么?为什么?
输出为: true false
因为num1和num2都是Integer类型的包装类对象,它们使用“==”进行比较时,比较的是它们的内存地址,即比较是否为同一个对象。在这里,num1和num2都是指向值为1的Integer对象,所以它们的内存地址是相同的,所以比较结果为true。
而str1和str2都是String类型的对象,它们使用“==”进行比较时,比较的是它们的内存地址,即比较是否为同一个对象。在这里,str1和str2分别指向两个不同的String对象,即使它们的值相同,但它们的内存地址是不同的,所以比较结果为false。
原文地址: https://www.cveoy.top/t/topic/iFpx 著作权归作者所有。请勿转载和采集!