Java 日期时间集合等相关基础内容汇总

Posted greatReanswer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 日期时间集合等相关基础内容汇总相关的知识,希望对你有一定的参考价值。

一、日期与时间相关
通用原则:清晰,流式,不可变,可扩展。
常以of, from, or with为前缀的方法来构造对象。
相关包:
java.time:包括 date, time, date and time combined, time zones, instants, duration, and clocks,Period类。
基于默认的ISO-8601定义的,都是不可变及线程安全的。
java.time.chrono:可用于自定义自己的日历系统。
java.time.format:可用格式化和解析日期和时间。
java.time.temporal:用于扩展日期和时间。
java.time.zone:用于支持时区,主要有 ZonedDateTime, and ZoneId or ZoneOffset.类。
上述所有类的常用方法前缀:

格式化线程不安全但常用的类SimpleDateFormat.
常用初始化日期和日期的LocalDate与LocalTime.

二、集合相关
大概接口架构如下:

Set 通用实现有:
HashSet:hash表存储元素,性能最好,不能保证迭代顺序。
TreeSet: 基于红黑树存储元素,元素基于值来排序。性能比HashSet慢。
LinkedHashSet:实现链接形式的hash表存储,基于插入顺序排序,介于上述两者。
常用块操作。

List通用实现有:
ArrayList:性能较好。
LinkedList:性能次之。
List的相关操作:
位置访问操作:get, set, add, addAll, and remove.
搜索指定对象:indexOf and lastIndexOf.
Iteration:listIterator.
Range-view:subList.
获取的subList可以执行增、删,原集合会同步更改。
将数组转化为List相关: Arrays.asList:
asList 得到的只是一个 Arrays 的内部类,一个原来数组的视图 List,因此如果对它进行增删操作会报错。

用 ArrayList 的构造器可以将其转变成真正的 ArrayList

Map通用实现:
HashMap、 TreeMap、LinkedHashMap,类似于上述Set的实现。
操作:
Map接口的基础操作:
put, get, remove, containsKey, containsValue, size, and empty
块操作:putAll and clear
集合视图:
keySet, entrySet, and values

Java 基础Java 8 Stream 相关内容的简单总结

以上是关于Java 日期时间集合等相关基础内容汇总的主要内容,如果未能解决你的问题,请参考以下文章

置顶文章-波波烤鸭博客文章汇总篇Java核心,经典开源框架应用及源码分析,企业级解决方案等强烈建议收藏!!!

置顶文章-波波烤鸭博客文章汇总篇Java核心,经典开源框架应用及源码分析,企业级解决方案等强烈建议收藏!!!

core Java基础知识汇总

Java 时间日期系列

java 集合类基础问题汇总

Java 基础Java 8 Stream 相关内容的简单总结