【发布时间】:2017-07-24 15:45:02
【问题描述】:
我正在尝试将文本文件读取到 arrayList 但它告诉我
"没有找到适合add(string)方法的方法 Collection.add(Animal) 不适用(参数不匹配;字符串 不能转换为动物)”
我有一个名为 Animal 的类,其中这是我的构造函数代码
//Constructor
public Animal(String aType, String aColor, boolean aVertebrate, boolean aFly, boolean aSwim) {
type = aType;
color = aColor;
vertebrate = aVertebrate;
fly = aFly;
swim = aSwim;
}
在我的主类中,这是我用来读取文本文件的代码
else if (menuSelection.equalsIgnoreCase("I")){
Animal a;
String line;
try (BufferedReader br = new BufferedReader(new FileReader("animalFile.txt"))){
if (!br.ready()){
throw new IOException();
}
while((line = br.readLine()) != null){
animalList.add(line);
}
br.close();
}catch (FileNotFoundException f){
System.out.println("Could not find file");
}catch (IOException e){
System.out.println("Could not process file");
}
int size = animalList.size();
for (int i = 0; i < animalList.size(); i++) {
System.out.println(animalList.get(i).toString());
}
我在“animalList.add(line)”上收到错误消息
【问题讨论】:
-
哪种错误?请发布确切的错误消息。
-
没有为 add(String) 方法找到合适的方法 Collection.add(Animal) 不适用(参数不匹配;字符串无法转换为 Animal)方法 List.add(Animal) 不适用(参数不匹配;字符串不能转换为动物)方法 AbstractCollection.add(Animal) 不适用(参数不匹配;字符串不能转换为动物)方法 AbstractList.add(Animal) 不适用(参数不匹配;字符串不能转换为动物) 方法 ArrayList.add(Animal) 不适用(参数不匹配;String 无法转换为 Animal)
-
抱歉,我没有意识到如果按 Enter 键,它会发布评论而不是转到下一行。我编辑了帖子,以便您可以看到完整的消息。
-
@Eduardo 的回答将解决您的问题。
标签: java arraylist netbeans bufferedreader