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中找到它。)
答案 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");
}
}