关于Java:Java – 在字符串数组中搜索字符串

Java - search a string in string array

本问题已经有最佳答案,请猛点这里访问。

在Java中,我们有任何方法来发现特定字符串是字符串数组的一部分。我可以做一个我想避免的循环。

例如

1
2
String [] array = {"AA","BB","CC" };
string x ="BB"

我想要一个

1
2
3
4
5
if (some condition to tell whether x is part of array) {
      do something
   } else {
     do soemthing
   }


做一些类似的事情:

1
Arrays.asList(array).contains(x);

因为如果字符串x存在于数组中,则返回true(现在转换为列表…)

例子:2


您还可以使用Apache的commons lang库,它提供了非常受欢迎的方法contains

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import org.apache.commons.lang.ArrayUtils;

public class CommonsLangContainsDemo {

    public static void execute(String[] strings, String searchString) {
        if (ArrayUtils.contains(strings, searchString)) {
            System.out.println("contains.");
        } else {
            System.out.println("does not contain.");
        }
    }

    public static void main(String[] args) {
        execute(new String[] {"AA","BB","CC" },"BB");
    }

}


此代码适用于您:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
bool count = false;
for(int i = 0; i < array.length; i++)
{
    if(array[i].equals(x))
    {
        count = true;
        break;
    }
}
if(count)
{
    //do some other thing
}
else
{
    //do some other thing
}