第3章 Properties集合

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第3章 Properties集合相关的知识,希望对你有一定的参考价值。

1.1 Properties介绍
Properties 类表示了一个持久的属性集。Properties 可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串。
特点:
1、Hashtable的子类,map集合中的方法都可以用。
2、该集合没有泛型。键值都是字符串。
3、它是一个可以持久化的属性集。键值可以存储到集合中,也可以存储到持久化的设备(硬盘、U盘、光盘)上。键值的来源也可以是持久化的设备。
4、有和流技术相结合的方法。
技术分享图片
1.2 利用Properties存储键值对
1.2.1 案例代码九:

package com.itheima_08;

import java.util.Map;
import java.util.Properties;
import java.util.Set;

/*

  • Properties:表示了一个持久的属性集,属性列表中每个键及其对应值都是一个字符串
  • 构造方法:
  • Properties()
    */
    public class PropertiesDemo2 {
    public static void main(String[] args) {
    //创建属性列表对象
    Properties prop = new Properties();
    //添加映射关系
    prop.put("CZBK001", "zhangsan");
    prop.put("CZBK002", "lisi");
    prop.put("CZBK003", "wangwu");
    //遍历属性列表
    //获取所有的key,通过key获取value
    Set<Object> keys = prop.keySet();
    for (Object key : keys) {
    Object value = prop.get(key);
    System.out.println(key + "=" + value);
    }
    System.out.println("------------------");
    //获取所有的结婚证对象
    Set<Map.Entry<Object,Object>> entrys = prop.entrySet();
    for (Map.Entry<Object, Object> entry : entrys) {
    Object key = entry.getKey();
    Object value = entry.getValue();
    System.out.println(key + "=" + value);
    }
    }
    }
    1.3 Properties与流结合使用
    1.3.1 案例代码十:
package com.itheima_08;

import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Properties;

/*
 * Properties和IO流结合的功能:
void load(Reader reader)
void list(PrintWriter out)
void store(Writer writer, String comments)

 *
 */
public class PropertiesDemo2 {
public static void main(String[] args) throws IOException{
//method();
//method2();
//创建属性列表对象
Properties prop = new Properties();
//添加映射关系
prop.setProperty("CZBK001", "zhangsan");
prop.setProperty("CZBK002", "lisi");
prop.setProperty("CZBK003", "wangwu");
//创建输出流对象
FileWriter fw = new FileWriter("e.txt");
//void store(Writer writer, String comments)
prop.store(fw, "hello world");
//释放资源
fw.close();
}

private static void method2() throws FileNotFoundException, IOException {
//创建属性列表对象
Properties prop = new Properties();
//创建一个输入流对象
FileReader fr = new FileReader("d.txt");
//void load(Reader reader)
prop.load(fr);
//释放资源
fr.close();
System.out.println(prop);
}

private static void method() throws FileNotFoundException {
//创建属性列表对象
Properties prop = new Properties();
//添加映射关系
prop.setProperty("CZBK001", "zhangsan");
prop.setProperty("CZBK002", "lisi");
prop.setProperty("CZBK003", "wangwu");
//创建打印流对象
PrintWriter out = new PrintWriter("d.txt");
//void list(PrintWriter out) 
prop.list(out);
//释放资源
out.close();
}
}

以上是关于第3章 Properties集合的主要内容,如果未能解决你的问题,请参考以下文章

Unity Shader入门精要学习笔记 - 第5章 开始 Unity Shader 学习之旅

Spring企业级程序设计 • 第2章 Spring Bean管理进阶

第3章 Map集合的嵌套

java学习--基础知识进阶第十天--标准输入流 & 转换流 & 打印流对象操作流 Properties集合

第1章 综合练习

Java8新特性第3章(Stream API)