Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何知道Android上的数组中是否有字符串?_Java_Android_Arrays_String_Search - Fatal编程技术网

Java 如何知道Android上的数组中是否有字符串?

Java 如何知道Android上的数组中是否有字符串?,java,android,arrays,string,search,Java,Android,Arrays,String,Search,大家好,我正在用Android编写一个应用程序,我不知道该怎么做才能得到我正在尝试的结果。我现在知道这很简单,但请帮助我 假设我有一个数组: String coco[] = { "hi", "everybody", "superman", "batman" }; 我还有一个: String heroe = "superman"; 现在我需要做一个循环,一个方法,或者别的什么,它接受“heroe”并搜索这个值(“超人”)是否在数组中,然后搜索这个值是否存在TRUE,如果不存在FALSE 谢谢

大家好,我正在用Android编写一个应用程序,我不知道该怎么做才能得到我正在尝试的结果。我现在知道这很简单,但请帮助我

假设我有一个数组:

String coco[] = { "hi", "everybody", "superman", "batman" };
我还有一个:

 String heroe = "superman";
现在我需要做一个循环,一个方法,或者别的什么,它接受“heroe”并搜索这个值(“超人”)是否在数组中,然后搜索这个值是否存在TRUE,如果不存在FALSE


谢谢大家。

最舒适的方法是将数组转换为列表,然后进行搜索

它干净、简短、富有表现力

boolean isThere = Arrays.asList(yourArray).contains("needle");

for(inti=0;i这里有一个简单的解决方案。使用可以使用.contains()方法的ArrayList会更容易

for(int i=0;i
只需迭代数组中的值,并将它们与您要查找的值进行比较

public boolean arraySearch(String[] strArray, String key) {

    for (String s : strArray) {
        if (s.equals(key)) {
            return true;
        }
    }
    return false;
}
您可以通过在代码中调用
arraySearch(coco,heroe);
来使用它

或者,您可以使用该类并使用:

boolean keyPresent = Arrays.asList(coco).contains(heroe);

你可以这样做

只需获取一个要搜索并迭代数组的变量,然后使用
equals
方法

String heroe = "superman";
boolean flag = false;
for(int index = 0; index < coco.length; index++)
{
    Strin value = coco[index];
    if(heroe.equals(value))
    {
       flag = true;
    }
}

if(flag) {
   //Exist
}
else {
   //Not Exist 
}
String heroe=“超人”;
布尔标志=假;
对于(int index=0;index
您可以这样做:

    for (String testcoco : coco)
    {
        if (testcoco.contains("superman"))
        {
            return true;
        }
    }
    return false;

最优雅的解决方案。+1嘿,谢谢!它真的很管用!干净、简短并完成任务。我只需添加if(Arrays.asList(yourray.contains)(“要搜索的字符串”)==true){@RobertoZuniga很高兴听到这个消息。顺便说一句,您可以省略
==true
。if语句行上的
关闭该语句,这意味着第一次迭代将始终返回true。您还缺少
if
条件语句周围的括号。
String heroe = "superman";
boolean flag = false;
for(int index = 0; index < coco.length; index++)
{
    Strin value = coco[index];
    if(heroe.equals(value))
    {
       flag = true;
    }
}

if(flag) {
   //Exist
}
else {
   //Not Exist 
}
    for (String testcoco : coco)
    {
        if (testcoco.contains("superman"))
        {
            return true;
        }
    }
    return false;
public boolean checkPresence(String desired)
 for(String s:coco){
    if(s.equals(desired)){
       return true
       }
    }
    return false;