首页 > 编程语言 >JavaSE——Properties集合

JavaSE——Properties集合

时间:2022-08-19 21:47:02浏览次数:57  
标签:System prop println key 集合 JavaSE Properties out

Properties集合

Properties作为Map集合的使用

介绍:
  • 是一个Map体系的集合类
  • Properties可以保存到流中或从流中加载
  • 属性列表中的每个键及其对应的值都是一个字符串
基本使用
public static void main(String[] args) {

    //定义Properties对象
    Properties prop = new Properties();

    //增:prop.put("Key", "Vlaue");
    prop.put("小龙女", "尹志平");
    prop.put("郭襄", "杨过");
    prop.put("电话", 123123123123);
    System.out.println(prop);//{小龙女=尹志平,郭襄=杨过,电话=123123123123}


    //删:prop.remove("Key");
    prop.remove("郭襄");
    System.out.println(prop);//{小龙女=尹志平,电话=123123123123}

    //改:prop.put("Key", "Vlaue"); --- 如果键不存在,那么就添加,如果键存在,那么就覆盖.
    prop.put("小龙女", "杨过");
    System.out.println(prop);//{小龙女=杨过,电话=123123123123}

    //查:prop.get("Value");
    Object value = prop.get("电话");
    System.out.println(value);//123123123123

    //遍历:创建prop.keySet();对象
    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>> entries = prop.entrySet();
    for (Map.Entry<Object, Object> entry : entries) {
        Object key = entry.getKey();
        Object value = entry.getValue();
        System.out.println(key + "=" + value);
    }

}

Properties作为Map集合的特有方法

方法名 说明
Object setProperty(String key, String value) 设置集合的键和值,都是String类型,底层调用 Hashtable方法 put
String getProperty(String key) 使用此属性列表中指定的键搜索属性
Set stringPropertyNames() 从该属性列表中返回一个不可修改的键集,其中键及其对应的值是字符串
        Properties prop = new Properties();
        //1增:prop.setProperty("Key", "Value");(键和值,只能是String类型)
        prop.setProperty("小龙女", "尹志平");
        prop.setProperty("郭襄", "杨过");
        prop.setProperty("黄蓉", "欧阳克");

        //2获取:String return = prop.getProperty("Key");
        System.out.println(prop.getProperty("小龙女"));
        System.out.println(prop.getProperty("郭襄"));
        System.out.println(prop.getProperty("黄蓉"));
        System.out.println(prop.getProperty("周芷若"));

        //参数2 是当key找不到时,返回指定的默认值
        System.out.println(prop.getProperty("神雕", "我叫默认值"));

        //3获取所有的key的set集合
        Set<String> keys = prop.stringPropertyNames();

        //遍历所有的key 获取对应的值
        for (String key : keys) {
            System.out.println(key + "----" + prop.getProperty(key));
        }

Properties和IO流相结合的方法

和IO流结合的方法
方法名 说明
void load(Reader reader) 从输入字符流读取属性列表(键和元素对)
void store(Writer writer, String comments) 将此属性列表(键和元素对)写入此 Properties表中,以适合使用 load(Reader)方法的格式写入输出字符流
代码1 Properties结合BufferedWriter存数据
Properties prop = new Properties();
prop.setProperty("小龙女", "尹志平");
prop.setProperty("郭襄", "杨过");
prop.setProperty("黄蓉", "欧阳克");

BufferedWriter bw = new BufferedWriter(new FileWriter("module01/persons.properties"));
//prop.store(bw, "存的是人物信息");
//参数2 是添加的注解,会存到文件中, 可以不加 传null
prop.store(bw, null);//通过字符流 把prop里的数据写入到文件
bw.close();
代码1 Properties结合BufferedReader加载数据
Properties prop1 = new Properties();
BufferedReader br = new BufferedReader(new FileReader("module01/persons.properties"));
prop1.load(br);//通过字符流,把文件的内容加载进Properties对象里

System.out.println(prop1.getProperty("小龙女"));
System.out.println(prop1.getProperty("郭襄"));
System.out.println(prop1.getProperty("黄蓉"));

标签:System,prop,println,key,集合,JavaSE,Properties,out
From: https://www.cnblogs.com/lixiuxian-blogs/p/16603338.html

相关文章

  • Python集合(Set)常用操作
    定义set是一个无序且不重复的元素集合。集合对象是一组无序排列可哈希的值,集合成员可以做字典中的键。集合用in和notin操作符检查成员,以len()內建函数得到集合的基数(大......
  • java-集合
    目录集合的分类:单列集合双列集合集合的分类:单列集合:只能存储一列数据的集合双列集合:有两列可以存储数据,是key-value键值对进行存储集合的框架:单列集合主要是Colle......
  • 集合框架5-----Map体系
    Map体系集合参考视频:13.33Map集合概述哔哩哔哩bilibili  HashMap(),代码如下:importjava.util.HashMap;importjava.util.Map;​​publicclassHashDemo2{ ......
  • 集合框架6-----Collection工具类
    Collection工具类:packagecom.mokuiran.collection;​importjava.util.ArrayList;importjava.util.Arrays;importjava.util.Collections;importjava.util.List;​/**......
  • springBoot配置文件properties和yml数组写法
    springBoot配置文件properties和yml数组写法springBoot配置文件properties和yml数组写法这里介绍一下springBoot中的两种文件配置方式中数组的使用,也就是集合。以下是......
  • JavaSE:第十七章:编程测试题
    练习:求1+2!+3!+…+20!的和longsum=0;for(inti=1;i<=20;i++){longtemp=1;for(intj=1;j<=i;j++){temp*=j;}sum+=......
  • 模板集合
    建议用标题旁边打开的目录,更清晰明了!其他读入、输出优化(必加!!!)快读模板inlineintread(){ intsum=0,f=1;chara=getchar(); while(a<'0'||a>'9'){if(a=='-') f=......
  • JavaSE:第二章:变量与运算符
    史上最全的知识体系脑图,覆盖所有知识点,所有细节,注意事项。变量与运算符:包含关键字,保留字,标识符,变量,运算符。更多内容请见原文,原文转载自:https://blog.csdn.net/weixin_44......
  • MyBatis核心配置文件详解、添加properties文件
    1.mybatis-config.xml文件详解<environmentsdefault="development">environments:配置连接数据库的环境属性:default:设置默认使用环境的id。可以有多个环境,像开......
  • 集合
    C++从入门到入土数据结构树状数组(BITs)线段树(SMT)算法:万谔之源DP......