java不兼容类型:无法将void转换为ArrayList<String>
我是Java新手,确信这是一个简单的修复,我只是不知道如何做。程序的这一部分旨在获取一个文本文件,将其转换为ArrayList,然后返回它,但返回时出错
package albumdatabase;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.Scanner;
public class Duration {
public static void getLength(String[] args){
ArrayList<String> listOfAlbums;
listOfAlbums = getList();
String arrayOfAlbums[] = new String[listOfAlbums.size()];
arrayOfAlbums = listOfAlbums.toArray(arrayOfAlbums);
System.out.println(arrayOfAlbums);
for( int i = 0; i < arrayOfAlbums.length - 1; i++){
System.out.println(i);
}
}
public static void getList()throws Exception{
ArrayList<String> listOfAlbums;
listOfAlbums = new ArrayList<String>();
FileReader albums = new FileReader("albums.txt");
Scanner scanner = new Scanner(albums);
while (scanner.hasNextLine()){
listOfAlbums.add(scanner.nextLine());
}
System.out.println(listOfAlbums);
scanner.close();
return listOfAlbums;
}
}
# 1 楼答案
您的getList()方法返回类型为void,如果您希望能够将该方法的结果分配给ArrayList
<T>
,它必须返回ArrayList<T>
,在您的情况下,它需要返回ArrayList<
字符串>
,因此getList()的头应该如下所示: