当前位置: 首页 > article >正文

Java(五十八)双列集合Properties

Properties类的父类是treetable,他是一个双列集合。

Properties 类表示了一个持久的属性集。

Properties 可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串。

总得来说Properties还是一个集合类。我们还是老样子,先来学习他的构造方法,再来学习他的成员方法:

一:构造方法

public Properties()

public static void main(String[] args) {
        Properties ss1 = new Properties();
        System.out.println(ss1);
    }

控制台输出:

{}

二:成员方法

1:put()加入数据

    public static void main(String[] args) {
        Properties ss1 = new Properties();
        ss1.put("潇寒", "18");
        ss1.put("camellia", "20");
        System.out.println(ss1);
    }

控制台输出:

{camellia=20, 潇寒=18}

2:get()获取数据

    public static void main(String[] args) {
        Properties ss1 = new Properties();
        ss1.put("潇寒", "18");
        ss1.put("camellia", "20");
        System.out.println(ss1);
 
        Object s1 = ss1.get("camellia");
        System.out.println(s1);
    }

控制台输出:

{camellia=20, 潇寒=18}
20

3:keySet()将集合的key放入一个集合中

    public static void main(String[] args) {
        Properties ss1 = new Properties();
        ss1.put("潇寒", "18");
        ss1.put("camellia", "20");
        System.out.println(ss1);
 
        Set<Object> s1 = ss1.keySet();
        System.out.println(s1);
    }

控制台输出:

{camellia=20, 潇寒=18}
[camellia, 潇寒]

我们来遍历输出一下集合的key-value吧。

    public static void main(String[] args) {
        Properties ss1 = new Properties();
        ss1.put("潇寒", "18");
        ss1.put("camellia", "20");
        System.out.println(ss1);
 
        Set<Object> setKey = ss1.keySet();
        for (Object key : setKey) {
            Object value = ss1.get(key);
            System.out.println(key + "---" + value);
        }
    }

控制台输出:

{camellia=20, 潇寒=18}
camellia---20
潇寒---18

Properties特有方法:

1:public Object setProperty(String key,String value):等同于之前学习的put()

    public static void main(String[] args) {
        Properties ss1 = new Properties();
        ss1.setProperty("潇寒", "18");
        ss1.setProperty("camellia", "20");
        System.out.println(ss1);
    }

控制台输出:

{camellia=20, 潇寒=18}

2:public String getProperty(String key):等同于之前学习的get()

    public static void main(String[] args) {
        Properties ss1 = new Properties();
        ss1.setProperty("潇寒", "18");
        ss1.setProperty("camellia", "20");
        System.out.println(ss1);
 
        Object val = ss1.getProperty("camellia");
        System.out.println(val);
    }

控制台输出:

{camellia=20, 潇寒=18}
20

3:public Set<String> stringPropertyNames():等同于之前学习的keySet()

    
public static void main(String[] args) {
        Properties ss1 = new Properties();
        ss1.setProperty("潇寒", "18");
        ss1.setProperty("camellia", "20");
        System.out.println(ss1);
 
        Object val = ss1.stringPropertyNames();
        System.out.println(val);
    }

控制台输出:

{camellia=20, 潇寒=18}
[camellia, 潇寒]

4:public void store(OutputStream out,String comments):将集合中的数据存储到指定的文件中

这个第一个参数是字节流对象。

    
public static void main(String[] args) throws Exception {
        Properties ss1 = new Properties();
        ss1.setProperty("潇寒", "18");
        ss1.setProperty("camellia", "20");
 
        ss1.store(new FileOutputStream("aaa.txt"), "字节流写入");
        // ss1.store(new FileWriter("aaa.txt"), "");
        System.out.println("写入成功!");
    }

5:public void store(Writer writer,String comments):将集合中的数据存储到指定的文件中

同上,只是这个是字符流的

6:*public void load(InputStream inStream):将文件中的数据加载到集合中(重点)

这个第一个参数是字节流对象。

    
public static void main(String[] args) throws Exception {
        Properties ss1 = new Properties();
        ss1.setProperty("潇寒", "18");
        ss1.setProperty("camellia", "20");
 
        ss1.store(new FileOutputStream("aaa.txt"), "字节流写入");
        // ss1.store(new FileWriter("aaa.txt"), "");
        System.out.println("写入成功!");
 
        // ==========================================================
        // 定义一个新的结合来存储读取的数据
        Properties res = new Properties();
        res.load(new FileInputStream("aaa.txt"));
        System.out.println(res);
    }

 控制台输出:

写入成功!
{camellia=20, 潇寒=18}

7:*public void load(Reader reader):将文件中的数据加载到集合中(重点)

同上,只是这个是字符流的

以上大概就是双列集合Properties的基本使用。

有好的建议,请在下方输入你的评论。


http://www.kler.cn/a/563340.html

相关文章:

  • AI 简史:人工智能发展历程
  • ubuntu上boost卸载和安装
  • vuetify项目添加代理跨域请求
  • 【无标题】oscp备考,oscp系列——Tr0ll1靶场,两种提权方式,ftp匿名登录,ssh爆破,ubuntu内核提权,计划任务
  • leetcode 169. 多数元素
  • 爬虫反爬:字体反爬案例分析与爬取实战
  • 记一次线上Tomcat服务内存溢出的问题处理
  • JVM生产环境问题定位与解决实战(二):JConsole、VisualVM到MAT的高级应用
  • 什么是完全前向保密(PFS)?
  • muduo网络库2
  • HTTP 动态报错码的原因和解决方法
  • 力扣——完全平方数
  • ChatGPT入驻Safari,AI搜索时代加速到来
  • 安科瑞DJSF1352直流电能表在光伏串组箱的应用:提升光伏发电效率与安全的智能利器-安科瑞 耿笠
  • 【JavaEE进阶】MyBatis 操作数据库(1)
  • Mysql疑难报错排查 - Field ‘XXX‘ doesn‘t have a default value
  • MySQL--索引的优化--LIKE模糊查询
  • Java IO 和 NIO 的基本概念和 API
  • 渗透测试(WAF过滤information_schema库的绕过,sqllib-46关,海洋cms9版本的注入)
  • SOME/IP-SD -- 协议英文原文讲解4