如何将字符串映射到静态定义的整数数组?我试过将字符串映射为整数的数组 - Java
private static Map<String, int[]> map = new HashMap<String, int[]>();
static {
map.put("foo", {5, 1, 3, 2});
map.put("bar", {2, 7, 8});
}
它告诉我{5,1,3,2}是非法的。
如何将字符串映射到静态定义的整数数组?我试过将字符串映射为整数的数组 - Java
private static Map<String, int[]> map = new HashMap<String, int[]>();
static {
map.put("foo", {5, 1, 3, 2});
map.put("bar", {2, 7, 8});
}
它告诉我{5,1,3,2}是非法的。
在初始化内容之前,您需要调用数组的构造函数。
map.put("foo", new int[]{5, 1, 3, 2});
尝试
private static Map<String, int[]> map = new HashMap<String, int[]>();
static {
map.put("foo", new int[]{5, 1, 3, 2});
map.put("bar", new int[]{2, 7, 8});
}
如果地图将永远不会改变,你可以使用Guava LIB:
private static ImmutableMap<String, int[]> immutaleMap =
ImmutableMap.of("foo", new int[]{5, 1, 3, 2},
"bar", new int[]{2, 7, 8});