我有州名缩写定义的城市数组列表。
static List<String> AL = Arrays.asList("ABBEVILLE","ADAMSVILLE",.....
static List<String> AK = Arrays.asList("ADAK","AKHIOK",......
无论调用哪一个,数组都会发生同样的事情。如何传递一个'AL'字符串并访问数组列表AL?我目前使用的是一个案例陈述......但它的所有50个代码都很多,我想把它修剪一下......
case "AL":
for(int index = 0; index < AL.size(); index++){.....}
case "AK":
for(int index = 0; index < AK.size(); index++){.....}
我喜欢这样的事情:
for(int index = 0; index < state_abbreviation.size(){
System.out.println(state_abbreviation[index]);
答案 0 :(得分:3)
您可以将每个List<String>
存储在Map
中,并使用州缩写作为地图的密钥。
import java.util.*;
class Test {
public static void main(String[] args) {
Map<String, List<String>> states = new HashMap<String, List<String>>();
List<String> al = Arrays.asList("ABBEVILLE", "ADAMSVILLE", "...");
List<String> ak = Arrays.asList("ADAK", "AKHIOK", "...");
states.put("AL", al);
states.put("AK", ak);
System.out.println(states.get("AL").get(1)); // ADAMSVILLE
}
}