我试图实例化我从文件中读取的String对象,然后将该对象的值设置为自定义类(Room)的对象。关于我如何做到这一点的任何建议?
这是我到目前为止所做的:
String roomName = scanner.hasNext() ? scanner.next() : "";
//scanning the name of the room from file
if(room == "room"){
Room roomName = new Room(roomName);
}
基本上,我试图设置我从文件中读取的roomName字符串,然后设置与Room对象名称相同的值。
编辑:我试图阅读的文件将有一个"门"价值或房间"价值,这就是我检查价值是否为"房间"或不。
Room类的实例化如下:
Room room0 = new Room(0);
我读过的示例文件是这样的:
room 0 wall wall wall
door d0 0 1 close
答案 0 :(得分:2)
按你的逻辑:
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
}
答案 1 :(得分:1)
这在Java中是不可能的。您不能将变量值(roomName的值)用作另一个变量名。