在另一个字符串中搜索字符串的一部分

时间:2013-11-05 10:21:46

标签: java

我正在尝试使用下面的代码在另一个字符串中找到一个字符串,但它不起作用。如果它不正确,请告诉我哪个方法字符串到 使用

String infoException="Could not connect to Item interfacecom.clns.exception.ItemNotFoundException: Could not find Item data";

String keys="ItemNotFoundException";

if(keys.contains(infoException))

 System.out.println("Exception found");

此致 拉吉

4 个答案:

答案 0 :(得分:3)

它应该是: if(infoException.contains(keys))

来自doc

public boolean contains(CharSequence s)

  

当且仅当此字符串包含指定的字符串时,才返回true   char值序列。

  参数
  s - 要搜索的序列

所以在这里你要找到keys中的序列infoException,而不是倒数。

<小时/> 使用if(keys.contains(infoException)),您实际上正在搜索密钥是否包含将返回"Could not connect to Item interfacecom.clns.exception.ItemNotFoundException: Could not find Item data"的序列false,因为keys不包含此序列。

答案 1 :(得分:1)

if(keys.contains(infoException))

将此行更改为

if(infoException.contains(keys))

答案 2 :(得分:1)

使用if (infoException.contains(keys))代替if(keys.contains(infoException))

所以将代码更改为

String infoException = "Could not connect to Item interfacecom.clns.exception.ItemNotFoundException: Could not find Item data";
String keys = "ItemNotFoundException";
if (infoException.contains(keys))
    System.out.println("Exception found");

输出:

Exception found

答案 3 :(得分:1)

转换支票,需要:

if(infoException.contains(keys))