在字符串数组中搜索,代码需要布尔值吗?

时间:2012-10-25 22:43:26

标签: java arrays string methods

所以我的代码应该在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声明中。

2 个答案:

答案 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()))

你过早地关闭括号,所以如果你有一个字符串而不是布尔值。