Java - 在字符串数组中搜索字符串例:

2022-09-02 05:06:49

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

例如:

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

我想要一个

if (some condition to tell whether x is part of array) {
      do something
   } else {
     do something else
   }

答案 1

执行如下操作:

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

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

例:

if(Arrays.asList(myArray).contains(x)){
    // is present ... :)
}

自Java8以来,有一种方法可以使用流来找到:

boolean found = Arrays.stream(myArray).anyMatch(x::equals);
if(found){
    // is present ... :)
}

答案 2

您还可以使用Apache的commons-lang库,它提供了备受赞赏的方法。contains

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");
    }

}