Я пытаюсь заполнить ArrayList данными, хранящимися в текстовом файле, данные представляют собой 5 разных значений, разделенных пробелом, и сочетание логических строк и целых чисел. Кроме того, я использую BlueJ, не уверен, что это что-то меняет.Java Read File Class, не создающий arraylist
Когда данные считываются из файла, объекты типа номера должны быть создан на основе этих данных
Я новичок в Java, я только начал изучать его в течение последних нескольких недель, мои данные для чтения класс выглядит следующим образом:
Комната данных класс:
public class RoomData
{
//Default Values of a Room
private int roomNumber = 0;
private int bookingNights = 0;
private boolean hasEnSuite = false;
private boolean isBooked = false;
private String bookingName = "<None>";
public void setRoomNumber(int roomNumber)
{
this.roomNumber = roomNumber;
}
public void setBookingNights(int bookingNights)
{
this.bookingNights = bookingNights;
}
public void setHasEnSuite()
{
this.hasEnSuite = hasEnSuite;
}
public void setIsBooked()
{
this.isBooked = isBooked;
}
public void setBookingName()
{
this.bookingName = bookingName;
}
}
ReadDataClass:
public class ReadHotelData
{
private String filePath;
public ReadHotelData()
{
filePath = "hotelData.txt";
}
private List<RoomData> list = new ArrayList <>();
public boolean hasNext() throws FileNotFoundException
{
Scanner s = new Scanner(new File("hotelData.txt"));
while (s.hasNext())
{
String nextLine = s.nextLine(); //reads text file line by line
RoomData roomData = new RoomData();
String[] values = nextLine.split(" "); // splits the text file by white space
roomData.setRoomNumber(Integer.parseInt(values[0]));
roomData.setBookingNights(Integer.parseInt(values[1]));
roomData.setHasEnSuite(Boolean.parseBoolean(values[2]));
roomData.setIsBooked(Boolean.parseBoolean(values[3]));
roomData.setBookingName(String.parseString(values[4]));
list.add(roomData);
}// end loop
s.close();
return true;
}
public List <RoomData> getRoomDataList()
{
return list;
}
}
Как я уже сказал, я новичок, поэтому, если мне не хватать ничего, я бы очень признателен за любую помощь!
Пример данных, хранящихся в текстовом файле:
0 false David 0 false
0 true John 0 false
0 false Jim 0 true
Итак, с чем вы столкнулись? –
Я хочу, чтобы arraylist создавался при запуске кода, arraylist хранится в другом классе под названием «Hotel» [ссылка] (http://imgur.com/93poXZA), как мой проект в настоящее время находится – Aaranihlus
Вы хотите прочитайте каждую строку в элементе списка? Код, который вы уже прочитали все токены в arraylist, вам нужен метод getter, который возвращает его, чтобы вы могли использовать его в любом месте. – A4L