【发布时间】:2009-12-20 12:31:33
【问题描述】:
我要制作一张酒店桌子。 但是我在尝试用 Java 实现它时遇到了问题。
我的酒店有 Level(int id) x Room(int id) x Field (字符串状态,整数计数器)
同样的在php中看起来像:
$level=1; $room=2;
if(isset($hotel[$level][$room])) {
print("Room: ".$level*100+$room);
print(", Status: ".$hotel[$level][$room]['status']);
print(", Total clients:".$hotel[$level][$room]['counter']);
}
这个打印返回我(如果有房间): “房间: 102,状态:已保留,客户总数: 8”;
现在我想在 JAVA 中也一样。
但问题是,我无法构建这个:
int[][][] my hotel;
因为,我的多维数组中有不同的类型。
我试着做这样的事情:
Map<String, List<String>> myHotel = new HashMap<String, List<String>>();
或者:
List<List<List<String>>> myHotel;
但是
out.println(
myHotel.get(1).get(2).get("status") + "\n" +
out.println(myHotel.get(1).get(2).get("status"));
甚至:
out.println("Status:" +
myHotel.get(1).get(2).get(0) + "\tClients:" +
myHotel.get(1).get(2).get(1)
);
还有如何放置元素。我在想这样的事情: 当它是MAP 表:
myHotel.put(1).add(2).add(0, "Reserved"));
// But better would be:
// myHotel.put(1).add(2).add("status", "Reserved"));
或者当它是列表<List<List<String>>>:
myHotel.add(1).add(2).add(0, "Reserved"));
// But better would be:
// myHotel.add(1).add(2).add("status", "Reserved"));
感谢您的帮助:)
【问题讨论】:
标签: java multidimensional-array hashmap