首页 > 解决方案 > 如何在数组中搜索字符串值

问题描述

我在 Android Studio 中有一个带字符串的数组,我想搜索值,值是文章和空格,我怎么能找到。我要搜索“das Buch” 不应该注意大小写

那是我的数组:

public String myArray []= {"Das Buch","Die Fahne","Das Arbeitsbuch"};

我想搜索fahne,它应该显示我死亡 Fahne

这是我的代码:

myText = editText.getText().toString();       

if (Arrays.asList(myArray).contains(myText)){
    Toast.makeText(this, myText + " found", Toast.LENGTH_SHORT).show();
else {
    Toast.makeText(this, myText + " not found", Toast.LENGTH_SHORT).show();
}

标签: javaandroidarraysstringsearch

解决方案


使用 Java 8,您可以对包含字符串的数组元素执行类似的操作,再次使用公共库进行不区分大小写的比较,然后如果需要列表中包含搜索元素的所有元素,则返回列表:

String myArray[] = {"Das Buch", "Die Fahne", "Das Arbeitsbuch"};
List<String> result = Arrays.asList(myArray).stream()
                .filter(x -> org.apache.commons.lang3.StringUtils.containsIgnoreCase(x, "das")).collect(Collectors.toList());
System.out.println(result);

推荐阅读