在ArrayList中搜索字符串

时间:2015-01-31 18:00:36

标签: java arraylist

System.out.println("What animal are you looking for?");
String find=input.nextLine();
for(int i=0; i<array.size(); i++)
{
    if(array.get(i).equals(find))
    {
        System.out.println(array.get(i)+" is in the ArrayList"); 
    }
}


它什么都不返回。您认为代码有什么问题? (它应该从用户那里获取一个字符串并尝试在ArrayList中找到它。)

3 个答案:

答案 0 :(得分:1)

跳过println语句有两个可能的原因:

  • ArrayList为空
  • ArrayList不为空,但不包含搜索到的字词。

只需尝试调试代码,您就会很快找到原因。

答案 1 :(得分:1)

尝试无循环

if (array.contains(find)) {
    System.out.println(find + " is in the ArrayList"); 
}

但是你的代码看起来还不错,所以你最有可能搞砸了你不能在这里分享的代码。

答案 2 :(得分:0)

这可能会对您有所帮助:

import java.util.ArrayList;
import java.util.Scanner;
public class ABC {

public static void main(String[] args) {
    ArrayList<String> Animals = new ArrayList<String>();
    Animals.add("Tiger");
    Animals.add("Lion");
    String input = null;
    System.out.println("Enter the name of the animal : ");
    Scanner in = new Scanner(System.in);  //Getting the name from the user
    input = in.nextLine();
    if (Animals.contains(input)) {        //Checking for presence 
        System.out.println("Present");
    }else
        System.out.println("Absent");
    }
}