网站虚拟主机建设,网站备案是哪个部门,大型网络游戏排行榜前十,页优化软件往期回顾#xff1a;
【前端学java】JAVA开发的依赖安装与环境配置 #xff08;0#xff09;【前端学 java】java的基础语法#xff08;1#xff09;【前端学java】JAVA中的packge与import#xff08;2#xff09;【前端学java】面向对象编程基础-类的使用 #xff08…往期回顾
【前端学java】JAVA开发的依赖安装与环境配置 0【前端学 java】java的基础语法1【前端学java】JAVA中的packge与import2【前端学java】面向对象编程基础-类的使用 3【前端学java】类中的访问权限详解通俗易懂4【前端学java】java中final修饰符5【前端学java】全网最通俗易懂的JAVA抽象概念6【前端学java】Java中的接口和枚举概念7【前端学java】java中的Object类8【前端学java】java 中的数组9【前端学java】java中的字符串操作10【前端学java】java中的包装类11
前端中的new Date()
在前端中使用原生js操作日期使用new Date() 这个构造函数。比如我们获取时间戳
let time new Date().getTime()
console.log(time) // 1697531070333我们简单复习一下js中一些常用的时间操作
getDate(): 返回日期对象中的日从 1 到 31。
getDay(): 返回日期对象中的星期几从 0 到 60 表示星期日。
getFullYear(): 返回日期对象中的四位年份。
getHours(): 返回日期对象中的小时从 0 到 23。
getMinutes(): 返回日期对象中的分钟从 0 到 59。
getSeconds(): 返回日期对象中的秒数从 0 到 59。
getTime(): 返回日期对象的毫秒表示自1970年1月1日00:00:00 UTC起。
getMonth(): 返回日期对象中的月份从 0 到 110 表示一月。
setDate(day): 设置日期对象中的日。
setFullYear(year, month, day): 设置日期对象中的年份、月份和日。
setHours(hour, min, sec, millisec): 设置日期对象中的小时、分钟、秒和毫秒。
setMinutes(min, sec, millisec): 设置日期对象中的分钟、秒和毫秒。
setSeconds(sec, millisec): 设置日期对象中的秒和毫秒。
setTime(millisec): 以毫秒为单位设置日期对象。
setMonth(month, day): 设置日期对象中的月份和日。java中的日期操作是怎么样的呢
java中的日期操作
日期类、日历类及LocalDate类
在java中也有一些列操作时间的方法比如在Java中打印时间戳我们可以用System. currentTimeMillis方法。
public class Date {public static void main(String[] args) {// Date :日期类System.out.println(System.currentTimeMillis()); // 1697530889457}
}System.currentTimeMillis返回以毫秒为单位的当前时间即从1970年1月1日午夜开始到现在的时间差结果以毫秒为单位表示。
java中的日期操作主要通过日期类Date 和日历类Calendar及 LocalDate类每个类都有其优点和缺点。
Date类Java中的基础日期类包含日期和时间的信息。但是它的API不太直观使用起来不太方便。此外它也不支持时区这使得它的使用有些受限。Calendar类这个类提供了一个更抽象的日期和时间表示。它允许您更轻松地处理像时区一年中的月份天数差异闰年等复杂的问题。然而它的API同样复杂而且有些方法已经被标记为已过时。LocalDate类这是Java 8引入的一个新的日期类。它只包含日期的信息不包含时间。这个类使用起来比Date和Calendar更直观更易用。此外它还支持时区这使得它能够更好地处理不同时区之间的日期和时间转换。如果您不需要处理时间而且想使用一个现代易用的API那么LocalDate可能是一个好选择。
日期类
日期类是通过new Date()声明的类我们在编译器输入new Date()时会发现有java.util.Date和java.sql.Date。 java.util.Date和java.sql.Date都是Java中用于表示日期的类与数据库交互可以使用java.sql.Date业务代码开发中我们自然使用java.util.Date
new Date()的返回值
import java.util.Date;public class DateStudy {public static void main(String[] args) {Date d new Date();System.out.println(d); // Tue Oct 17 16:52:41 CST 2023}
}new Date() 的返回值是一个 java.util.Date 对象其包含创建时的年、月、日、小时、分钟、秒和毫秒等信息。
日期格式化SimpleDateFormat
前端中日期格式化我们经常会使用第三方插件如dayjs或者momentjs。
let time new Date().format(YYYY-MM-DD HH:mm:ss)
consloe.log(time) // 2023-10-17 23:59:59在java中我们借助SimpleDateFormat类就可以快速实现日期的格式化而不用引入额外东西。
import java.text.SimpleDateFormat;
import java.util.Date;public class DateStudy {public static void main(String[] args) {// 创建一个 Date 对象Date d new Date();// 创建一个 SimpleDateFormat 对象指定日期格式SimpleDateFormat formatter new SimpleDateFormat(YYYY-MM-dd);// 使用 SimpleDateFormat 对象格式化日期String time formatter.format(d);System.out.println(time); // 2023-10-17}
}日期字符含义
y年份。可以使用一位或四位表示如“y”表示“2023”“yyyy”表示“2023”。M月份。可以使用一位或两位表示如“M”表示3月“MM”表示“03”。d日期。可以使用一位或两位表示如“d”表示8日“dd”表示“08”。H小时24小时制。可以使用一位或两位表示如“H”表示8点“HH”表示“08”。m分钟。可以使用一位或两位表示如“m”表示5分“mm”表示“05”。s秒。可以使用一位或两位表示如“s”表示6秒“ss”表示“06”。
注意java中的DD和前端中的DD含义不同。在java中DD表示一年中的日期而不是一个月中的日期。 // 创建一个 SimpleDateFormat 对象指定日期格式SimpleDateFormat formatter new SimpleDateFormat(YYYY-MM-DD);// 使用 SimpleDateFormat 对象格式化日期String time formatter.format(d);System.out.println(time); // 2023-10-290上述打印机结果中的290就是指的本年的第290天。
其他常用方法
Java中日期类的常用方法有很多我们目前不用过多学习大致了解即可。
getTime()
返回自1970年1月1日00:00:00 GMT以来的毫秒数。
Date d new Date();
System.out.println(d.getTime()); // 1697535905242before、after
比较两个日期的先后顺序。 注new Date这种传参方式已经不被推荐建议使用日历类操作了。
其他的不在列出。
日历类
java.util.Calendar类的常用方法包括getTime()、setTime()、add()、get()、set()等。
我们来简单熟悉一下这些方法。
getTime
getTime()方法被用来检索此日历的日期和时间通常以java.util.Date对象的形式返回。 import java.util.Calendar;
import java.util.Date;public class DateStudy {public static void main(String[] args) {// 创建一个Calendar对象Calendar calendar Calendar.getInstance();System.out.println(calendar.getTime()); // Tue Oct 17 18:10:12 CST 2023}
}注意创建日历对象的方式和创建日期对象的方式是有区别的
setTime
setTime()方法被用来设置此日历的日期和时间Calendar.setTime 方法可以接受一个 Date 或 long 类型的时间参数通常以java.util.Date对象的形式提供。
以 java.util.Date 对象的形式提供
public class DateStudy {public static void main(String[] args) {// 创建一个Calendar对象Calendar calendar Calendar.getInstance();// 创建一个自定义时间的Date对象 Date customTime new Date(2023,12,1);// 用自定义时间的Date对象设置Calendar的时间 calendar.setTime(customTime);System.out.println(calendar.getTime()); //Tue Jan 01 00:00:00 CST 3924}
}long 类型入参
public class DateStudy {public static void main(String[] args) {// 创建一个Calendar对象Calendar calendar Calendar.getInstance();// 定义一个long类型的时间参数,从2000毫秒后开始long time System.currentTimeMillis() 2000;// 用long类型的时间参数设置Calendar的时间calendar.setTimeInMillis(time);System.out.println(calendar.getTime()); // Tue Oct 17 18:24:09 CST 2023}
}注不同入参设置时间时用不同方法 add
add方法用于在指定的时间字段中添加或减少指定的值。
注意
add方法的第一个参数是要修改的时间字段Calendar提供一些默认的枚举值例如Calendar.DAY_OF_YEAR意味着你要修改年中的日期Calendar.MONTH意味着你要修改月份以此类推。
第二个参数是你要添加或减少的值。
set
日历类的set方法用于设置日历的各个字段例如年、月、日、小时和分钟。
public class DateStudy {public static void main(String[] args) {// 创建一个Calendar对象Calendar calendar Calendar.getInstance();// 设置日历的年份int year 2023;calendar.set(Calendar.YEAR, year);// 设置日历的月份int month 10;calendar.set(Calendar.MONTH, month - 1); // 注意月份是从0开始的所以要减1// 设置日历的日期int day 23;calendar.set(Calendar.DAY_OF_MONTH, day);// 设置日历的小时和分钟int hours 23;int minutes 59;calendar.set(Calendar.HOUR_OF_DAY, hours);calendar.set(Calendar.MINUTE, minutes);// 输出设置后的日历时间System.out.println(设置后的日历时间为: calendar.getTime());// 设置后的日历时间为: Mon Oct 23 23:59:28 CST 2023}
}LocalDate类
LocalDate类是Java 8引入的一个日期类它表示一个特定的日期包括年、月和日但不包括时间。这个类提供了一系列的方法来操作和处理日期如获取当前日期、增加或减少日期、比较日期等等。
实际上java8还引入了其他和时间有关的类
LocalDate用于表示一个日期包括年、月和日但不包括时间和时区信息。LocalDateTime用于表示一个日期和时间包括年、月、日、小时、分钟、秒和毫秒不包括时区信息。ZonedDateTime用于表示一个日期和时间包括年、月、日、小时、分钟、秒和毫秒以及时区信息。
这三个类都位于java.time包中它们的设计旨在替换Java 8之前的Date和Calendar类并提供更完善、更一致和更易于使用的日期和时间API。ps妈的全是学习成本