编程语言-java-重要类/方法

2022-04-26  本文已影响0人  with_dream

1、包装类/BigDecimal

BigDecimal专门用在处理财务数据 处理高精度数值
使用BigDecimal.valueOf()初始化数据 new BigDecimal()会丢失精度

2、Comparable/Comparator

3、hashCode与equals

4、String/StringBuilder/StringBuffer

5、时间

5.1 时间戳

时间戳为1970-01-01T00:00:00Z之后经过的时间 java精确到毫秒
java8之前使用Timestamp
java8使用Instant
java8 Clock 提供了使用时区和最佳可用系统时钟访问当前的瞬间、日期和时间 java9支持纳秒

5.2 Date

用来封装日期和时间 比较简单 可以比较时间

5.3 SimpleDateFormat

格式化日期 线程不安全?

字母 描述
G 纪元标记
y 四位年份
M 月份
d 一个月的日期
h A.M./P.M. (1~12)格式小时
H 一天中的小时 (0~23)
m 分钟数
s 秒数
S 毫秒数
E 星期几
D 一年中的日子
F 一个月中第几周的周几
w 一年中第几周
W 一个月中第几周
a A.M./P.M. 标记
k 一天中的小时(1~24)
K A.M./P.M. (0~11)格式小时
z 时区
' 文字定界符
" 单引号
5.4 Calendar
常量 意义
Calendar.YEAR 年份
Calendar.MONTH 月份 (0-11)
Calendar.DATE 日期
Calendar.DAY_OF_MONTH 日期,和上面的字段意义完全相同
Calendar.HOUR 12小时制的小时
Calendar.HOUR_OF_DAY 24小时制的小时
Calendar.MINUTE 分钟
Calendar.SECOND
Calendar.DAY_OF_WEEK 星期几

使用比较灵活 功能强大
可以增减时间 获取精确时间

GregorianCalendar为Calendar实现类 功能更强大

5.5 java8

主要用来替代旧api

类的名称 描述
Instant 时间戳
Clock 时钟比如获取美国纽约的时间
Duration 计算两个“时间”的间隔
Period 用于计算两个“日期”的间隔
LocalDate 只包含日期 比如:2020-04-05
LocalTime 只包含时间 比如:12:34:21
LoacalDateTime 包含日期和时间 比如:2021-04-05 12:34:34
Year
YearMonth 年-月
MonthDay 月-日
Month 1-12
DayOfWeek
ZonrOffset 时区偏移量
ZonedDateTime 带时区的时间
ZonedId 代表一个时区
DateTimeFormatter 时间格式化

参考:
https://blog.csdn.net/java_2017_csdn/article/details/76000652
https://www.runoob.com/java/java-date-time.html
Clock https://blog.csdn.net/qq_31635851/article/details/117778881
java8 https://www.cnblogs.com/xkkdev/p/15908719.html

6、Runtime

使用单例模式 可以获得虚拟机的信息 如查看内存、执行进程、gc()

7、不定参数

形如void test(int ...param) param的操作与数组相同

8、float转double 精度不准

float直接转double精度不准确 可以将float转字符再通过包装类转为double

上一篇 下一篇

猜你喜欢

热点阅读