Java 有人能解释一下contains()方法在String类中是如何工作的吗?
这是String类中的预定义方法,但我不理解传递参数Java 有人能解释一下contains()方法在String类中是如何工作的吗?,java,Java,这是String类中的预定义方法,但我不理解传递参数CharSequence s和indexOf(s.toString())>-1 谁能给我解释清楚,因为我是java新手,主要是什么 indexOf方法将在返回类型中执行。indexOf()将返回子字符串的索引(如果它存在于调用它的字符串中)或-1 在这种情况下,将通过将其与-1进行比较,从而得到true或false,然后返回该值。实际上,该方法的名称说明了这一切: 当boolean z=x.contains(y)时,字符串x是否包含字符串y 为
CharSequence s
和indexOf(s.toString())>-1
谁能给我解释清楚,因为我是java新手,主要是什么
indexOf方法将在返回类型中执行。indexOf()
将返回子字符串的索引(如果它存在于调用它的字符串中)或-1
在这种情况下,将通过
将其与-1进行比较,从而得到true
或false
,然后返回该值。实际上,该方法的名称说明了这一切:
当boolean z=x.contains(y)时,字符串x是否包含字符串y代码>
为了更好的解释,请点击这里
indexOf方法返回目标字符串的第一个出现位置。
如果找不到匹配字符串,则返回-1。
所以,如果indexOf方法返回-1,则意味着它找不到匹配项。这导致结果为false。是一个接口,因此String#contains
可以接受实现该接口的任何内容。实现它的类之一是String
,但也有其他类
CharSequence
定义了一个方法,toString
,该方法将字符序列转换为字符串
String
定义接受String
子字符串的,并通过返回它在字符串中出现的索引来告诉您它是否在字符串中。如果子字符串不在字符串中,则返回-1
因此,indexOf(s.toString())>-1
告诉您字符串是否包含由CharSequence
s
定义的子字符串。您在这里的最佳选择是熟悉它。事实上,当您不明白某件事情将要做什么时,请阅读文档。如果下面的任何答案都回答了您的问题,按照堆栈溢出的工作方式,您可以通过单击旁边的复选标记来“接受”答案。但前提是你的问题得到了回答;如果没有,考虑在问题中添加更多的细节。如果你自己回答的方式与现有答案明显不同,那么发布你自己的答案并接受它是完全可以的(这样会让你等两天才接受)。谢谢35; Dragondraik k
public boolean contains(CharSequence s) {
return indexOf(s.toString()) > -1;
}