如何将文件中的字符串值设置为自定义 class 变量?
How to set a String value from file to a custom class variable?
我正在尝试实例化从文件中读取的字符串对象,然后将该对象的值设置为自定义 class(房间)的对象。对我如何做到这一点有什么建议吗?
这是我目前拥有的:
String roomName = scanner.hasNext() ? scanner.next() : "";
//scanning the name of the room from file
if(room == "room"){
Room roomName = new Room(roomName);
}
基本上,我尝试设置从文件中读取的 roomName 字符串,然后设置与 Room 对象名称相同的值。
编辑:我尝试读取的文件将具有 "door" 值或 "room" 值,这就是我检查该值是否为 "room" 的原因或不。
房间 class 实例化如下:
Room room0 = new Room(0);
我读的示例文件是这样的:
room 0 wall wall wall
door d0 0 1 close
按照你的逻辑:
String roomName = scanner.hasNext() ? scanner.next() : "";
Room room = null;
if(roomName.equals("room")) {
room = new Room(roomName);
}
按照我的逻辑(没有什么可检查的):
Room room = new Room(scanner.hasNext() ? scanner.next() : ");
编辑:
List<Room> rooms = new ArrayList<>();
...
if (roomName.equals("room")) {
rooms.add(new Room(rooms.size())); // rooms.get(0) = room with number 0
}
这在 Java 中是不可能的。您不能使用变量值(roomName 的值)作为另一个变量名。
我正在尝试实例化从文件中读取的字符串对象,然后将该对象的值设置为自定义 class(房间)的对象。对我如何做到这一点有什么建议吗?
这是我目前拥有的:
String roomName = scanner.hasNext() ? scanner.next() : "";
//scanning the name of the room from file
if(room == "room"){
Room roomName = new Room(roomName);
}
基本上,我尝试设置从文件中读取的 roomName 字符串,然后设置与 Room 对象名称相同的值。
编辑:我尝试读取的文件将具有 "door" 值或 "room" 值,这就是我检查该值是否为 "room" 的原因或不。
房间 class 实例化如下:
Room room0 = new Room(0);
我读的示例文件是这样的:
room 0 wall wall wall
door d0 0 1 close
按照你的逻辑:
String roomName = scanner.hasNext() ? scanner.next() : "";
Room room = null;
if(roomName.equals("room")) {
room = new Room(roomName);
}
按照我的逻辑(没有什么可检查的):
Room room = new Room(scanner.hasNext() ? scanner.next() : ");
编辑:
List<Room> rooms = new ArrayList<>();
...
if (roomName.equals("room")) {
rooms.add(new Room(rooms.size())); // rooms.get(0) = room with number 0
}
这在 Java 中是不可能的。您不能使用变量值(roomName 的值)作为另一个变量名。