我正在尝试将文本文件"ListOfElectronics.txt"
中的短语列表添加到ArrayList "electronics"
。
我在这里收到错误:electronics.add(fileIn.nextLine());
这是"no suitable method found for add(java.lang.String)"
import java.util.Scanner;
import java.util.ArrayList;
import java.io.*;
/***
*
*
*
*/
public class Driver
{
public static void main(String[] args)
{
System.out.println("\f");
ArrayList<Electronics> electronics = new ArrayList<Electronics>();
Scanner stdIn = new Scanner(System.in);
Scanner fileIn;
try
{
fileIn = new Scanner(new FileReader("ListOfElectronics.txt"));
while (fileIn.hasNextLine())
{
electronics.add(fileIn.nextLine());
}
fileIn.close();
}
catch (FileNotFoundException e)
{
System.out.println("Error: " + e.getMessage());
}
}
}
答案 0 :(得分:1)
替换
ArrayList<Electronics> electronics = new ArrayList<Electronics>();
与
ArrayList<String> electronics = new ArrayList<>();
否则,它希望您添加一个名为Electronics
的类的对象。
如果您有一个名为Electronics
的课程,那么您希望将其添加到Arraylist中,如果它有一个要求String
的构造函数,则可以替换该添加字符串:
electronics.add(new Electronics(fileIn.nextLine()));
答案 1 :(得分:0)
如果您的电子课程看起来像这样
public class Electronics {
private string name;
public Electronics(String name) {
this.name = name;
}
}
然后你可以替换:
while (fileIn.hasNextLine())
{
electronics.add(fileIn.nextLine());
}
与
while (fileIn.hasNextLine())
{
Electronics electronics = new Electronics(fileIn.nextLine();
electronics.add(electronics);
}