keyset与stringpropertynames都是取出映射中的键,但是可以看一下API的介绍properties中的stringpropertynames
键值对应的是字符串,其键或值不是 String 类型的属性被忽略,因为properties是用于操作文件的流对象,
Map中的keyset没有限制条件,所以还是有区别的。我做了两个不同的方法如下:
1、Map集合中的添加与取出方法
Map<Integer,String> map = new HashMap<Integer,String>();
method_2(map);
}
public static void method_2(Map<Integer, String> map) {
// TODO Auto-generated method stub
map.put(8, "wangwu");
map.put(7, "zhaoliu");
map.put(2, "sunyang");
map.put(5, "lihua");
Set<Integer> keyset = map.keySet();
Iterator<Integer> it = keyset.iterator();
while(it.hasNext()){
Integer key = it.next();
String value = map.get(key);
System.out.println(key+":"+value);
}
}
2、propertise中的添加与取出
Properties prop = new Properties();
prop.setProperty("lisi", "12");
prop.setProperty("zhaoliu", "21");
prop.setProperty("sunwu", "18");
Set<String> set = prop.stringPropertyNames();
for (String key : set) {
String value = prop.getProperty(key);
System.out.println(key+":"+value);
}
}
仅供参考 |