2022/07/28 吉软 Java基础(13)常用API

Java的值传递和所谓的引用传递

本质上Java只有值传递,所有的赋值传参都是一次值的拷贝

引用数据类型其实拷贝的就是引用地址(虚地址)

基本数据类型拷贝的是值,不会传入实例对象本身

面试题:打印输出的结果是?

2022/07/28 吉软 Java基础(13)常用API_第1张图片

输出结果Tom

常用API

API(Application Programming Interface)应用程序接口

JDK给我们提供的一些已经写好的类,我们可以直接调方法来解决问题

String(可以叫API接口)

我们类的方法,在宏观上都可以称为接口

API文档,用来介绍API

时间相关的API

时间:格林尼治天文台

时区:东八区:北京时间

时间戳:格林尼治时间1970.1.1 00:00:00 到现在的毫秒数

1s = 1000ms , 1min = 60s , 1h = 60min , 1day =24h。

时间戳在全世界都是固定的。忽略了时区等

日期类

Date

2022/07/28 吉软 Java基础(13)常用API_第2张图片

compareTo

2022/07/28 吉软 Java基础(13)常用API_第3张图片

当返回负数时,说明调用者时间是在参数时间之前。

当返回0时,说明调用者时间和参数时间相同。

当返回正数时,说明调用者时间在阐述时间之后。

日历类:日期、时间

Calendar是一个抽象类,能new不能创建对象

初始化;

提供了一组对“年月日、时分秒、星期”等信息的操作函数。可以操作不同时区的信息。

JDK1.1版本开始,在处理时间和日期时,系统推荐使用Calendar类

Calendar要比Date强大的多

2022/07/28 吉软 Java基础(13)常用API_第4张图片

除非要获取的年月日时分秒一次性拿取,否则一律用calendar


时区

ZoneId

日期格式化

SimpleDateFormat

format:格式化Date类型,把Date类型转成String类型

我们要展示数据到客户端

parse:把String类型的时间,转成Date类型

从客户端传过来的时间,一般都是String类型,存入数据库。

yyyy代表年,yy代表年的后两位

MM代表月

dd代表日

HH代表小时(24小时制) hh代表小时(12小时制)

mm代表分

ss代表秒

SSS代表毫秒

工具类的方法都是静态

JDK8的日期时间类

在JDK8之前,处理日期和时间,基本上就是用我们上面的几个类

Date和Calendar,获取到的月份都是0-11,而不是我们生活中的1-12


阿里巴巴规约的明确要求:

如果是JDK8的应用,可以使用Instant来代替Date,LocalDateTime代替Calendar,DateTimeFormatter代替SimpleDateFormat


新的时间类

Instant

LocalDate

LocalTime

DateTimeFormatter


持续时间Duration

2022/07/28 吉软 Java基础(13)常用API_第5张图片

获取当前的日期 LocalDate

2022/07/28 吉软 Java基础(13)常用API_第6张图片

2022/07/28 吉软 Java基础(13)常用API_第7张图片

判断是否为闰年

本地时间 LocalTime

2022/07/28 吉软 Java基础(13)常用API_第8张图片

获取日和时间  LocalDateTime

2022/07/28 吉软 Java基础(13)常用API_第9张图片

处理日期的格式化问题  DateTimeFormatter

2022/07/28 吉软 Java基础(13)常用API_第10张图片

把Instant转成Date

把Date转成Instant

把Instant转成LocalDateTime

把LocalDateTime转成Instant

把Date转成LocalDateTime

2022/07/28 吉软 Java基础(13)常用API_第11张图片

把LocalDateTime转成Date

2022/07/28 吉软 Java基础(13)常用API_第12张图片

Math 数学类

随机数 random() double

向上取整  ceil() double

向下取整  floor()double

四舍五入  round()long

BigDecimal统计类

2022/07/28 吉软 Java基础(13)常用API_第13张图片

随机类 Random

2022/07/28 吉软 Java基础(13)常用API_第14张图片

Arrays——数组的工具类

数组的排序

2022/07/28 吉软 Java基础(13)常用API_第15张图片

数组的查找

数组拷贝

数组的比较

System类——系统类

2022/07/28 吉软 Java基础(13)常用API_第16张图片

Objects(工具类)JDK1.7

判断是不是空

StringBufferStringBuilder——可变的字符序列

和String是有本质区别的

StringBuffer不能直接用等号赋值

追加

2022/07/28 吉软 Java基础(13)常用API_第17张图片

删除

删除指定位置

插入

反转(面试会问)

String怎么反转?

1.

2022/07/28 吉软 Java基础(13)常用API_第18张图片

2.

2022/07/28 吉软 Java基础(13)常用API_第19张图片

StringBuffer是(线程)同步的。安全,效率低

StringBuilder是异步的。不安全,效率高

面试题:三个字符串的区别

2022/07/28 吉软 Java基础(13)常用API_第20张图片

你可能感兴趣的:(java)