java 省市二级联动代码
时间: 2024-04-14 07:20:03 浏览: 170
省市级联动代码
以下是一个简单的 Java 省市二级联动的示例代码:
```
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Scanner;
public class ProvinceCitySelector {
private static final Map<String, Map<String, String>> map = new LinkedHashMap<>();
public static void main(String[] args) {
initMap();
Scanner scanner = new Scanner(System.in);
String province;
String city;
do {
System.out.println("请输入省份:");
province = scanner.next();
} while (!map.containsKey(province));
do {
System.out.println("请输入城市:");
city = scanner.next();
} while (!map.get(province).containsKey(city));
System.out.println("您选择的省份和城市是:" + province + "," + city);
}
private static void initMap() {
Map<String, String> beijing = new HashMap<>();
beijing.put("东城区", "010");
beijing.put("西城区", "010");
beijing.put("崇文区", "010");
beijing.put("宣武区", "010");
beijing.put("朝阳区", "010");
beijing.put("丰台区", "010");
beijing.put("石景山区", "010");
beijing.put("海淀区", "010");
beijing.put("门头沟区", "010");
beijing.put("房山区", "010");
beijing.put("通州区", "010");
beijing.put("顺义区", "010");
beijing.put("昌平区", "010");
beijing.put("大兴区", "010");
beijing.put("怀柔区", "010");
beijing.put("平谷区", "010");
beijing.put("密云县", "010");
beijing.put("延庆县", "010");
map.put("北京市", beijing);
Map<String, String> shanghai = new HashMap<>();
shanghai.put("黄浦区", "021");
shanghai.put("徐汇区", "021");
shanghai.put("长宁区", "021");
shanghai.put("静安区", "021");
shanghai.put("普陀区", "021");
shanghai.put("闸北区", "021");
shanghai.put("虹口区", "021");
shanghai.put("杨浦区", "021");
shanghai.put("闵行区", "021");
shanghai.put("宝山区", "021");
shanghai.put("嘉定区", "021");
shanghai.put("浦东新区", "021");
shanghai.put("金山区", "021");
shanghai.put("松江区", "021");
shanghai.put("青浦区", "021");
shanghai.put("奉贤区", "021");
shanghai.put("崇明县", "021");
map.put("上海市", shanghai);
}
}
```
这个示例程序中,我们通过一个嵌套的 LinkedHashMap 来存储城市信息。键是省份名称,值是一个 LinkedHashMap,它的键是城市名称,值是城市对应的电话区号(仅作为示例,实际上并不准确)。在 `main` 方法中,我们先读入用户输入的省份名称,然后再读入城市名称。如果用户输入的省份或城市不在我们的数据中,就一直提示用户重新输入,直到输入正确为止。最后,我们输出用户选择的省份和城市。
尽管这个示例程序非常简单,但是它的要点是数据的结构和读取。我们可以通过更复杂的数据结构来支持更多的选项,并使用更复杂的算法来搜索和过滤数据。
阅读全文