java学习之高级语法(二十四)----- Properties集合

简介: java学习之高级语法(二十四)----- Properties集合

 Properties集合

java.util.Properties 集合 extends Hashtable<k,b> implements Map<k,v>

Properties 类表示了一个持久的属性集,Properties 可以保存在流中或者从流中加载

Properties 集合是唯一一个和IO流相结合的集合,可以使用Properties集合中的方法 store 把集合中的临时数据持久化写到硬盘中存储,可以使用 load 方法把硬盘中保存的文件(键值对)读取到集合中使用

属性列表中每个键及其对应值都是一个字符串

Properties集合是一个双列集合,key 和 value 默认都是字符串

✔  Properties 集合有一些操作字符串的特有方法:

---  Object  setProperty( String  key ,  String  value ) 调用Hashtable的方法put

---  String  getProperty( String  key ) 通过key找到value值,此方法相当于Map集合中的 get( key )

image.gif编辑

✔  可以使用 Properties集合中的方法 store 把集合中的临时数据持久化写入到硬盘中存储

---  void  store( OutputStream out ,String comments )

---  void  store( Writer writer , String comments )

参数:   OutputStream out  -- 字节输出流,不能写入中文

             Writer writer  --  字符输出流,能写入中文

             String comments  --  注释,用来解释说明保存的文件是做什么的,不能使用中文,会产生乱码,默认是Unicode编码,一般使用“ 空字符串 ”

使用步骤:

(1)创建 Properties集合对象,添加数据

(2)创建字节输出流 / 字符输出流对象,构造方法中绑定要输出的目的地

(3)使用 Properties集合中的store方法,把集合中的临时数据持久化写入到硬盘中存储

(4)释放资源

image.gif编辑

✔  可以使用 Properties集合中的方法load把硬盘中保存的文件(键值对)读取到集合中使用

---  void load( InputStream  inStream )

---  void load( Reader  reader )

参数:  InputStream  inStream  --  字节输入流,不能读取含有中文的键值对

            Reader  reader  --  字符输入流,能读取含有中文的键值对

使用步骤:

(1)创建 Properties集合对象

(2)使用 Properties集合对象中的方法load读取保存键值对的文件

(3)遍历Properties集合

注意:

(1)存储键值对的文件中,键与值默认的连接符号可以使用= , 空格(其他符号)

(2)存储键值对的文件中,可以使用 # 进行注释 ,被注释的键值对不会再被读取

(3)存储键值对的文件中,键与值默认都是字符串,不用再加引号

image.gif编辑

相关文章
|
7天前
|
安全 Java API
【Java面试题汇总】Java基础篇——String+集合+泛型+IO+异常+反射(2023版)
String常量池、String、StringBuffer、Stringbuilder有什么区别、List与Set的区别、ArrayList和LinkedList的区别、HashMap底层原理、ConcurrentHashMap、HashMap和Hashtable的区别、泛型擦除、ABA问题、IO多路复用、BIO、NIO、O、异常处理机制、反射
【Java面试题汇总】Java基础篇——String+集合+泛型+IO+异常+反射(2023版)
|
4天前
|
设计模式 架构师 Java
Java开发工程师转架构师需要学习什么
Java开发工程师转型为架构师需掌握多项技能:精通Java及框架、数据库与分布式系统;熟悉设计模式与架构模式;积累项目经验;提升沟通与领导力;持续学习新技术;培养系统设计与抽象能力;了解中间件及开发工具;并注重个人特质与职业发展。具体路径应结合个人目标与实际情况制定。
34 18
|
18天前
|
监控 Java 调度
【Java学习】多线程&JUC万字超详解
本文详细介绍了多线程的概念和三种实现方式,还有一些常见的成员方法,CPU的调动方式,多线程的生命周期,还有线程安全问题,锁和死锁的概念,以及等待唤醒机制,阻塞队列,多线程的六种状态,线程池等
79 6
【Java学习】多线程&JUC万字超详解
|
13天前
|
存储 Java 容器
Java 基础语法
Java是一种面向对象的编程语言,其基础语法包括类和对象、方法、变量、控制流语句、继承和多态以及异常处理。代码需写在类中,`main()`方法是程序入口,变量用于存储数据,控制流语句控制程序执行流程,继承和多态增强代码灵活性,异常处理保证程序稳定性。掌握这些知识可帮助您编写简单的Java程序。
|
18天前
|
安全 前端开发 Java
浅析JVM invokedynamic指令与Java Lambda语法的深度融合
在Java的演进历程中,Lambda表达式无疑是Java 8引入的一项革命性特性,它极大地简化了函数式编程在Java中的应用,使得代码更加简洁、易于阅读和维护。而这一切的背后,JVM的invokedynamic指令功不可没。本文将深入探讨invokedynamic指令的工作原理及其与Java Lambda语法的紧密联系,带您领略这一技术背后的奥秘。
13 1
|
22天前
|
Java
用JAVA架建List集合为树形结构的代码方法
这段代码定义了一个表示树形结构的 `Node` 类和一个用于构建树形结构的 `TreeController`。`Node` 类包含基本属性如 `id`、`pid`、`name` 和 `type`,以及子节点列表 `children`。`TreeController` 包含初始化节点列表并将其转换为树形结构的方法。通过过滤和分组操作实现树形结构的构建。详情可见:[代码示例链接1](http://www.zidongmutanji.com/zsjx/43551.html),[代码效果参考链接2](https://www.257342.com/sitemap/post.html)。
28 5
|
22天前
|
存储 Java 程序员
Java中的集合框架:从入门到精通
【8月更文挑战第30天】在Java的世界里,集合框架是一块基石,它不仅承载着数据的存储和操作,还体现了面向对象编程的精髓。本篇文章将带你遨游Java集合框架的海洋,从基础概念到高级应用,一步步揭示它的奥秘。你将学会如何选择合适的集合类型,掌握集合的遍历技巧,以及理解集合框架背后的设计哲学。让我们一起探索这个强大工具,解锁数据结构的新视角。
|
22天前
|
小程序 Java
【aspose-words】Aspose.Words for Java模板语法详细剖析
本文通过详细分析Aspose.Words for Java模板语法,介绍了使用条件块、变量和动态合并表格单元格三个常用模板标签,并结合实际案例进行演示。通过这三个标签的实操,帮助读者更好地掌握Aspose.Words的使用技巧。此外,还提供了官方文档链接以便进一步学习。
66 0
【aspose-words】Aspose.Words for Java模板语法详细剖析
|
21天前
|
存储 算法 Java
Java中的集合框架深度解析与实践
【8月更文挑战第31天】在Java编程的海洋中,集合框架扮演着不可或缺的角色。本文将带你领略Java集合框架的魅力,从理论到实践,深入浅出地探索List、Set和Map等核心接口的使用技巧。我们将通过具体代码示例,展示如何在日常开发中高效运用这些工具,让你的代码更加优雅和高效。无论你是初学者还是有经验的开发者,这篇文章都将为你打开一扇通往Java集合世界的大门。
|
21天前
|
存储 人工智能 Java
JAVA集合
【8月更文挑战第31天】