如何通过在Java中将字符串作为引用传递给数组来返回数组?

时间:2015-03-15 19:53:22

标签: java arrays list

我有州名缩写定义的城市数组列表。

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]);

1 个答案:

答案 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
    }
}