第十小组 石晓荟 2022-07-28
**JAVA基础收尾**
学习心得:
今天的内容主要是api的学习与练习,内容不算难,都可以跟的上,但是有一点记不住,课下多联系就好了
知识总结:
一:Java的值传递和所谓的引用传递
Java的值传递和所谓的引用传递
本质上Java只有值传递,所有的赋值传参都是一次值的拷贝。
引用数据类型拷贝的就是引用地址,基本数据类型拷贝的是值,不会传入实例对象本身。
二:API(API(Application Programming Interface)应用程序接口。)
时间相关API:
时间戳:1970.1.1 00:00:00到今天2022.7.28 9:29:30的毫秒数 1s=1000ms。时间戳在全时间都是固定的。时间戳可用于计算时间复杂度(循环所需时间)
public static void main(String[] args) { // 获取时间戳 // 可以通过时间戳转换成我们当前所在地的具体时间和日期 System.out.println(System.currentTimeMillis());}
1.Date:
2.日历类:
Canlendar是一个抽象类。初始化 -- 提供了一组对年月日时分秒星期...信息的操作函数,可以操作不同时区的信息。
` public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
System.out.println(calendar.get(Calendar.YEAR));
System.out.println(calendar.get(Calendar.DAY_OF_YEAR));
System.out.println(calendar.get(Calendar.DATE));
System.out.println(calendar.get(Calendar.MONTH));
System.out.println(calendar.get(Calendar.HOUR_OF_DAY));
System.out.println(calendar.get(Calendar.HOUR));
System.out.println(calendar.get(Calendar.MILLISECOND));
}`
3.时区:
ZoneId zoneId = ZoneId.of("America/New_York"); System.out.println(TimeZone.getTimeZone(zoneId));
4.日期格式化:
SimpleDateFormat
format:格式化Date类型,把Date类型转成String类型,我们要展示数据到客户端。
parse:把String类型的时间,转成Date类型,从客户端传过来的时间,一般都是String类型,存入数据库。
yyyy:年
yy:年的后两位
MM:月
dd:日
HH:小时 24小时制
hh:小时 12小时制
mm:分
ss:秒
SSS:毫秒
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss"); String s = sdf.format(date); System.out.println(s);
5.阿里巴巴规约明确要求:
如果是jdk8的应用,可以使用
Instant代替Date
LocalDateTime代替Calendar
DateTimeFormatter代替SimpleDateFormat
新的实践类:
Instant:
LocalDate
LocalTime
LocalDateTime
DateTimeFormatter
LocalDate:获取当前日期
LocalTime:本地时间
LocalDateTime:获取日期和时间
-
DateTimeFormatter
-
处理日期的格式化问题
` LocalDate now = LocalDate.now();DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy年MM月dd日"); System.out.println(now.format(dateTimeFormatter));`
-
Instant和Date的转换
-
Instant和LocalDate转换
-
Date和LocalDateTime转换
点击查看代码
Instant instant = Instant.now();
// 把Instant转成Date
Date date = Date.from(instant);
// 把Date转成Instant
Instant toInstant = date.toInstant();
// 把Instant转成LocalDateTime
LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, ZoneId.systemDefault());
// 把LocalDateTime转成Instant
Instant instant1 = LocalDateTime.now().toInstant(ZoneOffset.UTC);
// 把date转成LocalDateTime
Date date1 = new Date();
Instant instant2 = date.toInstant();
LocalDateTime localDateTime1 = LocalDateTime.ofInstant(instant2, ZoneId.systemDefault());
// 把LocalDateTime转成Date
LocalDateTime now = LocalDateTime.now();
Instant instant3 = now.atZone(ZoneId.systemDefault()).toInstant();
Date date2 = Date.from(instant3);
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】