Java equals()方法?
一个人不应该把一个物体传给相等的物体吗Java equals()方法?,java,Java,一个人不应该把一个物体传给相等的物体吗 String hej = pets.getBark(); if(hej.equals("woff")) 为什么可以传递字符串woff?带引号的字符串是一个对象。它是String类的一个实例 如果我正确理解了您的问题,您可能想知道为什么可以将文本字符串值传递给接受string类型参数的方法。这是因为字符串文字是实例(新实例或先前创建的实例,已通过内部保存)的缩写: 字符串类表示字符 字符串Java中的所有字符串文本 像“abc”这样的节目是
String hej = pets.getBark();
if(hej.equals("woff"))
为什么可以传递字符串woff?带引号的字符串是一个对象。它是String类的一个实例 如果我正确理解了您的问题,您可能想知道为什么可以将文本字符串值传递给接受
string
类型参数的方法。这是因为字符串文字是实例(新实例或先前创建的实例,已通过内部保存)的缩写:
字符串
类表示字符
字符串Java中的所有字符串文本
像“abc”这样的节目是
作为这方面的实例实现
课程。
在引擎盖下,字符串文本(引号内的文本)自动替换为字符串实例。(字符串文字是新字符串的缩写) 这就是此代码工作的原因:
String hello=“hello”代码>
所以
与您提供的代码相同。文字字符串仍然是string类型。您可以传递java.lang.string
,它是java.lang.Object
的子类型,因为它是这样说的。由于字符串内部,它实际上与字符串不完全相同,IIRC。
String hej = pets.getBark();
if( hej.equals( new String("woff") ) ) {}