爲什麼不創建一個地圖,其中區域是密鑰,值是在該區域下的電臺列表?
然後,您可以有一個處理地圖的羣體的方法...
private static Map<String, List<String>> createZoneMap() {
Map<String, List<String>> zoneMap = new HashMap<String, List<String>>();
// Probably want to populate this map from a file
return zoneMap;
}
然後你的主能看起來像......
public static void main(String args[]) {
Map<String, List<String>> zoneMap = createZoneMap();
Scanner scan = new Scanner(System.in);
String input;
while (true) {
input = scan.nextLine();
// Some code to exit the application...
if (input.equalsIgnoreCase("quit")) {
System.out.println("Exiting...");
System.exit(1);
}
String zone = findZone(zoneMap, input);
if (zone != null) {
System.out.println(input + " is in " + zone);
} else {
System.out.println("That is not a Station, please try again");
}
}
}
然後,當你在輸入通過地圖查找站名以查找該站所屬的區域,如果它不存在則返回null或其他東西
private static String findZone(Map<String, List<String>> zoneMap, String station) {
// Maybe make this more versatile so that it does not care about case...
for (Map.Entry<String, List<String>> entry : zoneMap.entrySet()) {
if (entry.getValue().contains(station)) {
return entry.getKey();
}
}
return null;
}
希望這對你來說是一個很好的起點。你也可以考慮放棄在主要方法中執行所有的邏輯,而是在main中創建你的類的一個實例。
這與JavaScript無關。 – Griffith