11-Properties基本介绍
- Properties 类继承自 Hashtable 类并且实现了 Map 接口,也是使用一种键值对的形式来保存数据。(因为继承 Properties ,所以键值对不可以为 null )
- Properties 类使用特点和 Hashtable 类类似,但是请注意Properties 类的键值类型都为 String 。虽然可以直接调用父类 put 和 get 方法,但是 Properties 类本身是为了处理字符串键值对,所以调用 setProperty 和 getProperty 方法。
- Properties 类可以用于从以 .properties 为文件格式的文件,将其中的数据加载到 Properties 类对象,进行读取和修改,还能将该对象中存储的数据存储到以 .properties 为文件格式的文件。
- Properties 类内部还维护了一个 protected Properties defaults,这个 Properties 类对象是为了当本身的 Properties 类对象中查询不到对应 key 对应的 value 时,就会查询 protected Properties defaults,返回该设定的默认值。(这个 protected Properties defaults 在初始化时需指定)
- 将所需要的数据写在以 .properties 为文件格式的文件中,然后通过 Properties 类对象进行读取加载,可以便于数据的修改。只需修改文件,而不用修改代码。
- 实践练习
package map.properties;
import java.util.Iterator;
import java.util.Map;
import java.util.Properties;
import java.util.Set;
public class PropertiesSource {
@SuppressWarnings({"all"})
public static void main(String[] args) {
Properties properties = new Properties();
properties.setProperty("www.jingdong.com","192.168.0.1") ;
properties.setProperty("www.baidu.com","192.168.0.2") ;
properties.setProperty("www.douyin.com","192.168.0.3") ;
System.out.println(properties.getProperty("www.baidu.com"));
Set<Map.Entry<Object, Object>> entries = properties.entrySet();
Iterator<Map.Entry<Object, Object>> iterator = entries.iterator();
while (iterator.hasNext()) {
Map.Entry<Object, Object> next = iterator.next();
String key = (String) next.getKey();
String value = (String) next.getValue();
System.out.println(key + value);
}
}
}
标签:11,String,iterator,介绍,properties,util,键值,Properties
From: https://www.cnblogs.com/Yao-happy/p/18299447