社交网站平台怎么做,推荐6个免费国外自媒体平台,中文域名网站链接无法打开,阳江网雨大医院文章目录 第一代日期类 Date常用构造方法SimpleDateFormat 日期格式化类日期转字符串#xff08;String - Date)字符串转日期 (String-Date) 第二代日期类 Calendar常用字段与如何得到实例对象相关 API 第三代日期类#xff08;LocalDate\TIme)日期#xff0c;时间String - Date)字符串转日期 (String-Date) 第二代日期类 Calendar常用字段与如何得到实例对象相关 API 第三代日期类LocalDate\TIme)日期时间日期时间日期时间格式化DateTimeFormatter)时间戳计算时间(Time)对象间隔Duration)计算日期(Date)对象间隔 (Period)日期(Date)矫正器TemporalAdjusters) 第一代日期类 Date
常用构造方法 第一种Date() 第二种Date(long 毫秒 public class Main {public static void main(String[] args) throws ParseException {//默认国外形式Date date new Date();System.out.println(date);//创建了一个代表从1970年1月1日00:00:00 GMT开始后的1000毫秒的日期和时间。//但是输出 toString 的时候它会显示当前系统所在时区的时间。//因此如果你的系统位于东八区例如中国标准时间那么输出将会是 08:00:00Date date1 new Date(1000);System.out.println(date1);}
}
1000 是 一秒1000 * 60 就是 60秒1000 * 60 * 10 就是 10分钟 SimpleDateFormat 日期格式化类 日期转字符串String - Date) 用 String format(Date date) 方法转成字符串 public class Main {public static void main(String[] args) throws ParseException {Date date new Date();//y:年份M年中月份d月中日期F星期, H一天中的小时m小时中的分钟SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd 星期F HH:mm);//转成字符串String date1 sdf.format(date);//输出2024-06-28 星期 4 22:42System.out.println(date1);}
}字符串转日期 (String-Date) 用 Date parse(String source) 转成 Date public class Main {public static void main(String[] args) throws ParseException {String data 2024-6-28 星期5 22:49;//格式和上面对不上会报 parseException 异常 SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd 星期F HH:mm);Date date sdf.parse(data);System.out.println(data);}
}格式和上面对不上会报 parseException 异常 第二代日期类 Calendar Calendar 类是一个抽象类它为特定瞬间与一组诸如 YEAR, MONTH, DAY_OF_MONTH, HOUR 等 日期字段 之间的转换提供了一些方法并为操作日历字段例如获得下星期的日期提供了一些方法 常用字段与如何得到实例对象 Calender 没有专门的格式化方法需要程序员自己组合
public class Main {public static void main(String[] args) throws ParseException {Calendar calendar Calendar.getInstance();System.out.println(calendar);//底层是这样的public static final int YEAR 1;int year calendar.get(1);int year2 calendar.get(Calendar.YEAR);System.out.println(year);System.out.println(year2);}
}相关 API public class Main {public static void main(String[] args) throws ParseException {Calendar calendar Calendar.getInstance();//把年设置成 2004calendar.set(Calendar.YEAR, 2004);System.out.println(calendar.get(Calendar.YEAR));//加一年calendar.add(Calendar.YEAR, -1);System.out.println(calendar.get(Calendar.YEAR));//关联日期String strDate 2008-05-20 15:30:30;SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd HH:mm:ss);Date date sdf.parse(strDate);calendar.setTime(date);System.out.println(calendar.get(Calendar.YEAR));}
}第三代日期类LocalDate\TIme) JDK 8 加入的 LocalDate (日期/年月日)LocalTime (时间/时分秒)LocalDateTime (日期时间) 老日期类线程不安全 新的支持线程安全建议直接用这个就行 日期时间日期时间 public class Main {public static void main(String[] args) throws ParseException {//获取当前日期LocalDateTime ldt LocalDateTime.now();System.out.println(ldt);//获取指定日期时间LocalDateTime ldt2 LocalDateTime.of(2024,6,29,10,10);System.out.println(ldt);//加减日期ldt2 ldt2.plusYears(2).plusYears(-1);System.out.println(ldt2);//获取年int year ldt2.getYear();System.out.println(year);}
}日期时间格式化DateTimeFormatter) public class Main {public static void main(String[] args) throws ParseException {//LocalDateTime - StringLocalDateTime localDateTime LocalDateTime.now();DateTimeFormatter dtf DateTimeFormatter.ofPattern(yyyy-MM-dd);String s dtf.format(localDateTime);System.out.println(s);//String - LocalDateTimeString date 2024-06-29;DateTimeFormatter dtf2 DateTimeFormatter.ofPattern(yyyy-MM-dd);//格式不对会抛 parse 异常LocalDate localDate LocalDate.parse(date, dtf2);System.out.println(localDate);}
}如果是 LocalDateTime 必须要包含时间和日期 时间戳 时间戳1970年1月1日零时零分零秒到系统当前时间的总毫秒数 public class Main {public static void main(String[] args) throws ParseException {//获取系统当前时间UTC全球标准时间Instant instant Instant.now();//获取时间戳long cuo instant.toEpochMilli();System.out.println(cuo);}
}计算时间(Time)对象间隔Duration) public class Main {public static void main(String[] args) throws ParseException {LocalDateTime time1 LocalDateTime.of(2024, 6,29,8,8);LocalDateTime time2 LocalDateTime.of(2023, 5,27,8,8);//两时间对象相差对少天//后面 - 前面Duration duration Duration.between( time2,time1);System.out.println(duration.toDays());//两时间相差多少天System.out.println(duration.toHours());}
}计算日期(Date)对象间隔 (Period) public class Main {public static void main(String[] args) throws ParseException {LocalDate localDate1 LocalDate.of(2007, 7,7);LocalDate localDate2 LocalDate.of(2008, 7,7);Period between Period.between(localDate1, localDate2);//相差年数System.out.println(between.getYears());}
}日期(Date)矫正器TemporalAdjusters)
public class Main {public static void main(String[] args) throws ParseException {//获取系统当前时间LocalDateTime now LocalDateTime.now();//矫正时间LocalDateTime localDateTime now.with(TemporalAdjusters.lastDayOfMonth());System.out.println(localDateTime);}
}