Properties类基本使用

举报
兮动人 发表于 2022/10/23 22:27:58 2022/10/23
【摘要】 1. 基本介绍 2. 基本使用 2. 开发中如何选择集合实现类 1. 基本介绍Properties类继承自Hashtable类并且实现了 Map 接口,也是使用一种键值对的形式来保存数据使用特点和Hashtable类似Properties 还可以用于从xxx.properties文件中,加载数据到Properties类并进行读取和修改xxx.properties 文件通常作为配置文件来使用...

1. 基本介绍

  1. Properties类继承自Hashtable类并且实现了 Map 接口,也是使用一种键值对的形式来保存数据
  2. 使用特点和Hashtable类似
  3. Properties 还可以用于从xxx.properties文件中,加载数据到Properties类并进行读取和修改
  4. xxx.properties 文件通常作为配置文件来使用

2. 基本使用

  • 案例:
//1. Properties 继承  Hashtable
//2. 可以通过 k-v 存放数据,key 和 value 不能为 null
//增加
Properties properties = new Properties();
//properties.put(null, "abc");//抛出 空指针异常
//properties.put("abc", null); //抛出 空指针异常
properties.put("xdr", 100);//k-v
properties.put("jack", 200);
properties.put("mick", 300);
properties.put("mick", 400);//如果有相同的key , value被替换

System.out.println("properties=" + properties);

在这里插入图片描述

  • 通过 k 获取对应值
System.out.println(properties.get("xdr"));//100
  • 删除:
properties.remove("mick");
System.out.println("properties=" + properties);

在这里插入图片描述

  • 修改:
properties.put("jack", "tom");
System.out.println("properties=" + properties);

在这里插入图片描述

2. 开发中如何选择集合实现类

  • 在开发中,选择什么集合实现类,主要取决于业务操作特点,然后根据集合实现类特性进行选择,分析如下:
  1. 先判断存储的类型(一组对象【单列】或一组键值对【双列】)
  2. 一组对象【单列】:Collection 接口
    • 允许重复: List
      1. 增删多: LinkedList 【底层维护了一个双向链表】
      2. 改查多: ArrayList 【底层维护了Object类型的可变数组】
    • 不允许重复: Set
      1. 无序: HashSet 【底层是HashMap,维护了一个哈希表即 (数组+链表+红黑树) 】
      2. 排序: TreeSet
      3. 插入和取出顺序一致:LinkedHashSet ,维护数组+双向链表
  3. 一组键值对【双列】: Map
    • 键无序: HashMap 【底层是:哈希表jdk7: 数组+链表,jdk8: 数组+链表+红黑树 】
    • 键排序: TreeMap
    • 键插入和取出顺序一致: LinkedHashMap
    • 读取文件 Properties
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。