#java #file #list
#java #файл #Список
Вопрос:
Мне нужна помощь с помещением строк из файла в список (на Java). Вот мой код:
import java.util.Scanner;
import java.io.*;
public class MyProgram7{
public static void main(String[] args){
//Declare Variables
File file = new File ("data7_names_Fall_2011.txt");
Scanner input = new Scanner(file);
Prog7Methods pm = new Prog7Methods();
MyList<String> list = new MyArrayList<String>();
}
}
Я хочу поместить каждое имя в список, чтобы я мог добавлять и вставлять и тому подобное. Вот мой файл:
Ли Кит Остин Кейси Джейсон Шерри Джордан Кори Реджинальд Брайан Тарей Кристофер Рэнди Генри Джереми Роберт Джошуа Роберт Эйлин Кассандра Альберт Рассел Итан Кэмерон Тайлер Алекс Кентрелл Редерик
Я знаю, что мне, вероятно, нужно использовать цикл for, но я просто не могу придумать, как это сделать…
Ответ №1:
...
List<String> list = new ArrayList<String>();
// add to list
while (input.hasNext()) {
list.add(input.next());
}
// display
for (String s : list) {
System.out.println(s);
}
Комментарии:
1. Похоже, это имело бы смысл. Я получаю эту ошибку: MyProgram7.java:14: незарегистрированное исключение java.io.FileNotFoundException; должно быть перехвачено или объявлено, что оно выдается Scanner input = новый сканер (файл);
2. @Josh: либо завершите свои вызовы с помощью try ..catch(FileNotFoundException ex), либо используйте предложение throws FileNotFoundException
3. Спасибо вам. Я также получаю эту ошибку: MyProgram7.java:22: foreach не применимо к типу выражения for (String s : list){
4. Мне также нужно, чтобы каждое имя находилось в другом узле.
5. @Josh: каков тип вашего списка? так ли это
Iteratable
?