Map的几种遍历方式
1. 通过KeySet取出map数据
案例:
class Param{
String type = "";//数据类型
Object data ; //数据值
}
Map<Integer, Param> params;
for (Integer key : params.keySet()) {
Param value = params.get(key);
if (value.type.equals("int")) {
System.out.println("int:" + value.data);
} else if (value.type.equals("boolean" )) {
System.out.println("boolean:" + value.data);
} else if (value.type.equals("byte")) {
System.out.println("byte:" + value.data);
}
}
2. 通过EntrySet取出map数据
案例:
Map<Integer, Param> params;
for(Entry<Interger,Params> entry : params.entrySet()){
System.out.println("key:" + entry.getKey() +"value类型:" + entry.getValue().type + "value值:" + entry.getValue().data);
}
3.使用Interator迭代器 进行map的遍历
案例:
Map<Integer, Param> params;
Interator<Interger> it = params.keySet().inerator(); //相当于value的集合,对应的是index是key
while(it.hasNext()){
Integer key = it.next();
System.out.println("key:" + key + "value类型:" + params.get(key).type + "value值:" + params.get(key).data);
}
/
//这里也可以将迭代器设置成Entry<Integer, Param>
Map<Integer, Param> params;
Iterator<Entry<Integer, Param>> iterator = map.entrySet().iterator();
while(iterator.hasNext()){
Entry<Integer, Param> entry = iterator.next();
System.out.println("key值:"+entry.getKey()+ "value类型:" + entry.getValue().type +" value值:"+entry.getValue().data);
}