1 package day10.lesson3;
2
3 import java.util.Properties;
4 import java.util.Set;
5
6 /*
7 3 Properties集合
8
9 3.1 Properties作为Map集合的使用
10
11 Properties是一个Map体系的集合类
12 Properties可以保存到流中或从流中加载
13 属性列表中的每个键及其对应的值都是一个字符串
14 extends Hashtable<Object, object>
15 但注意Properties没有泛型
16 */
17 public class PropertiesDemo01 {
18 public static void main(String[] args) {
19 // Properties<String, String> prop = new Properties<>(); //编译异常
20 Properties prop = new Properties();
21
22 prop.put("001", "张三");
23 prop.put("002", "李四");
24 prop.put("003", "王五");
25
26 //可以按照Map集合遍历方式对其进行遍历
27 Set<Object> keySet = prop.keySet();
28 for (Object key: keySet){
29 Object value = prop.get(key);
30 System.out.println(key + "," + value);
31 }
32 /*
33 003,王五
34 002,李四
35 001,张三
36 同map集合无序
37 */
38 }
39 }
1 package day10.lesson3;
2
3 import java.util.Properties;
4 import java.util.Set;
5
6 /*
7 3.2 Properties作为Map集合的特有方法
8
9 Object setProperty(String key, String value)
10 设置集合的键和值,都是String类型,底层调用 Hashtable方法 put
11 String getProperty(String key)
12 使用此属性列表中指定的键搜索属性
13 Set stringPropertyNames()
14 从该属性列表中返回一个不可修改的键集,其中键及其对应的值是字符串
15 */
16 public class PropertiesDemo02 {
17 public static void main(String[] args) {
18 Properties prop = new Properties();
19 prop.setProperty("001", "zhangsan");
20 prop.setProperty("002", "lisi");
21 prop.setProperty("003", "wangwu");
22 /*
23 public synchronized Object setProperty(String key, String value) {
24 return put(key, value);
25 }
26 Object put(Object key, Object value) {
27 return map.put(key, value);
28 }
29 */
30 System.out.println(prop); //{003=wangwu, 002=lisi, 001=zhangsan}
31
32
33 System.out.println(prop.getProperty("001")); //zhangsan
34 System.out.println(prop.getProperty("002")); //lisi
35 System.out.println(prop.getProperty("007")); //null
36
37
38 /*Set<String> names = prop.stringPropertyNames();
39 for (String key: names){
40 System.out.println(key);
41 }*/
42 //Properties特有遍历方法
43 Set<String> names = prop.stringPropertyNames();
44 for (String key: names){
45 String value = prop.getProperty(key);
46 System.out.println(key + "," + value);
47 }
48 /*
49 003,wangwu
50 002,lisi
51 001,zhangsan
52 */
53 }
54 }