当用new创建的两个字符串时为什么不能用==比较两个字符串的值?
1、先说结论,不能。两个对象进行比较,如果使用==符号,那么比较的是这两个对象的“引用”(类似C语言中指针的概念)。
2、JAVA比较两个字符串是否相等可以用equals方法或者是“==”。equals 方法常常用来检测两个对象是否相等,即两个对象的内容是否相等,如果只是比较对象的内容,而不比较对象来源和功能类型时,常用此方法。
3、String 类创建的时候,检查字符串abc是否在pool中已经存在,存在的话就会共享。
java是不是赋值字符串的时候用“==”,实数类型的时候“=”,就可以…
1、equals比较的是值,因此只要值相等,equals就返回true。“==”比较的是内存地址,这个就相对复杂一点了。在java的内存中大致可以分为3块:栈、堆、常量池。
2、java是强类型语言,不仅要使用“=”这个赋值符号,还要保证“=”两侧的是同一种类型的对象。
3、字符串怎么可以赋值给一个实数a呢。你得把他们分别拿出来然后再转换成实数再赋值给a。
4、字符串比较,通常情况下比较的是字符串的值而非引用,不同的“引用”是可以对应相同值的,如果这时候用==比较,得出的结论是不相等,但是实际上它们的值是相等的。
5、因为等号是默认为一模一样才相等,如果两个字符串为两个不同对象,是不会相等的,哪怕长得一样。
为什么JAVA不可以用“==”来比较两个字符串是否相等?
1、先说结论,不能。两个对象进行比较,如果使用==符号,那么比较的是这两个对象的“引用”(类似C语言中指针的概念)。
2、JAVA比较两个字符串是否相等可以用equals方法或者是“==”。equals 方法常常用来检测两个对象是否相等,即两个对象的内容是否相等,如果只是比较对象的内容,而不比较对象来源和功能类型时,常用此方法。
3、因为等号是默认为一模一样才相等,如果两个字符串为两个不同对象,是不会相等的,哪怕长得一样。
java中,==两天可以写字符串吗
JAVA比较两个字符串是否相等可以用equals方法或者是“==”。equals 方法常常用来检测两个对象是否相等,即两个对象的内容是否相等,如果只是比较对象的内容,而不比较对象来源和功能类型时,常用此方法。
不可以。==比较字符串是否引用同一地址,如果2个字符串是同一个对象,那可以用==,如果不是同一个对象,只是比较内容是否一致,则不可以用==。
char只能用== equals是Object的方法 字符串比较相等一般用equals,不要用==。
在java的内存中大致可以分为3块:栈、堆、常量池。String a = ni//这里a保存在栈中,他指向常量池的值“ni”,因此 System.out.println(a==ni);// 打印true,因为他们都指向常量池的“ni”地址。
java中可以用==来比较两个字符串是否相等吗
不可以。==比较字符串是否引用同一地址,如果2个字符串是同一个对象,那可以用==,如果不是同一个对象,只是比较内容是否一致,则不可以用==。
字符串比较相等一般用equals,不要用==。
java中判断字符串是否相等有两种方法:用“==”运算符,该运算符表示指向字符串的引用是否相同,比如: String a=abcString b=abc,那么a==b将返回true。
在java中,不能用“==”和“!=”来判断两个字符串是否相等。因为String是引用类型,而不是基本数据类型。故它们的比较是使用地址和值 来比较,因为它们是不同的对象,有不同的地址。