java中,==两天可以写字符串吗

Python019

java中,==两天可以写字符串吗,第1张

不可以。在java中,Java的字符串初始化以后是不可写的,因此==两天是不可以写字符串的,利用这点,如果不同的字符串变量内容相同,则可以调用引用,而不是创建新的对象,从而减少内存占用。

Java中,如果两个字符串是这样 Sting a=“a” 赋值方式时,同样也可以使用 == 来比较是否相等,但实际上也不是在比较两个变量的内容,当新一个变量赋值时( Sting a=“a” 赋值方式会把值放到栈中)先会从栈中找是否有相同的值,如果有就会直接指向那个值,所以使用==也可比较是否相等。\x0d\x0a但如果是new String("a")这样new出字符串对象时,即使内容完全一样,使用==比较也是false,因为==比较的是堆内存中的地址,所以只能是用equals()方法比较内容。\x0d\x0a\x0d\x0aC#可用 == 来比较两个字符串是否相等,其实底层也是使用了equals()方法来进行比较。

1.

==用于比较引用和比较基本数据类型时具有不同的功能:

比较基本数据类型,如果两个值相同,则结果为true

而在比较引用时,如果引用指向内存中的同一对象,结果为true

2.

equals

方法(是String类从它的超类Object中继承的)被用来检测两个对象是否相等,即两个对象的内容是否相等,区分大小写