有个类中需要用到很多数值,我要放到相应的类中,就用HashMap来了个常量集合。
public class Constant {
public static final String[] test = {"aa", "bb", "cc"};
}
Set<String> setA = new HashSet<>(Arrays.asList(Constant.test ));
if (test .contains("aa")) {
Log.e(TAG, "onReceive: --------");
}
使用方式:
public static final Map<String, String> aMap = new HashMap() {{
put("A", "1");
put("B", "2");
}};
HashMap的几种遍历方法
第一种:
Map<String, ArrayList> map = new HashMap<String, ArrayList>();
Set<String> keys = map.keySet();
Iterator<String> iterator = keys.iterator();
while (iterator.hasNext()) {
String key = iterator.next();
ArrayList arrayList = map.get(key);
for (Object o : arrayList) {
System.out.println(o + "遍历过程");
}
//这里需要注意一点,如果你想对该Map进行删除操作的话,代码如下:
//iterator.remove();
//如果使用 map.remove(key)
//会报以下异常:java.util.ConcurrentModificationException
}
第二种:
Map<String, Integer> tempMap = new HashMap<String, Integer>();
tempMap.put("a", 1);
tempMap.put("b", 2);
tempMap.put("c", 3);
for (String o : tempMap.keySet()) {
System.out.println("key=" + o + " value=" + tempMap.get(o));
}
第三种:
Map<String, Integer> tempMap = new HashMap<String, Integer>();
tempMap.put("a", 1);
tempMap.put("b", 2);
tempMap.put("c", 3);
for (Iterator i = tempMap.keySet().iterator(); i.hasNext();) {
String obj = i.next();
System.out.println(obj);// 循环输出key
System.out.println("key=" + obj + " value=" + tempMap.get(obj));
}