我正在尝试将文本文件中的行存储到不是String数组的数组中。返回类型应该是一个GO数组(创建了另一个名为“GO”的类,带有构造函数和get- / set-methods,我将在代码的其他部分使用它。)
int rad = 0;
GO [] list = new CD [rad];
public GO[] readFile(String filename) throws FileNotFoundException {
Scanner read = new Scanner (new File(filename));
while (read.hasNextLine()==true){
rad++;
read.nextLine();
} read.close();
read = new Scanner(new File(filename));
for (int i=0;i<list.length;i++){
//here the lines of the file should be stored in the "GO"array
// but the declaration cannot convert string to GO[]
list[i]=read.nextLine()
答案 0 :(得分:0)
class GO<T>{
private T ref;
public GO(T ref) {
this.ref = ref;
}
}
你应该改变你的GO类使用泛型,你可以用这种方法为Go Array增加值。
list[i] = new GO(read.nextLine());
将类更改为泛型。您可以通过将任何对象传递给构造函数来创建Go类的实例。
答案 1 :(得分:-1)
您需要自己解析生成的String
并从中构建一个GO
对象,这可以是保持清洁的单独方法。获取对象变量的值并适当使用您的setter。
如果您的程序正在撰写文件的内容,那么您最好GO
实施Serializeable
并保存/加载对象的状态本身而不是制作文字。如果没有,上面是你唯一的选择,真的。