我正在尝试使用下面的代码在另一个字符串中找到一个字符串,但它不起作用。如果它不正确,请告诉我哪个方法字符串到 使用
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");
此致 拉吉
答案 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))