所以我的代码应该在String Array中搜索名称。所以“mit”会找到“Smith”,我几乎就在那里,但我的方法中存在问题。在for
循环内搜索名称,有一个错误告诉我我需要一个布尔值,我正在使用一个字符串。有人知道怎么修这个东西吗?
public static void Search(String[] arr, String find) {
for (int i = 0; i < 10; i++) {
if (arr[i].toLowerCase()).contains(find.toLowerCase()) {
System.out.println(String.format("found name: %s", arr[i]));
return;
}
}
System.out.println("Name not found!");
}
错误发生在if
声明中。
答案 0 :(得分:3)
看看这个:
if (arr[i].toLowerCase()).contains(find.toLowerCase())
统计括号...您在第一个if
之后立即关闭toLowerCase()
条件,而{em>不在contains
之后关闭它。你想要:
if (arr[i].toLowerCase().contains(find.toLowerCase()))
答案 1 :(得分:0)
这样做:
if ( arr[i].toLowerCase().contains(find.toLowerCase()))
你过早地关闭括号,所以如果你有一个字符串而不是布尔值。