Date,Calender,simpleDateFormat,LocalDateTime,DateTimeFormat等关于时间的类

Date类与simpleDateFormat类:

date.gettime();

simpleDateFormat可以设置Date类对象的输出格式

simpleDateFormat sim=new simpleDateFormat();

sim.format(date);

 

 1 /**
 2  * 1:simpleDateFormat的使用:对日期Date类的格式化与解析
 3  * 两个操作:
 4  * 1:格式化:日期转换成字符串
 5  * 2:解析:格式化逆过程
 6  *
 7  *
 8  */
 9 public class DateTimeTest {
10     @Test
11     public void test(){
12        // SimpleDateFormat simpleDateFormat=new SimpleDateFormat();//实例化对象,默认构造器
13         SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
14         //可以手动改成这种标准格式,开发中常用
15         Date date=new Date();
16         System.out.println(date);
17         System.out.println(simpleDateFormat.format(date));//将日期转换成字符串
18        // String str="1998-03-18 上午11:48";//必须写成这种格式才可以逆过程对于默认构造器
19         String str="2021-10-15 21:15:30";
20         try {
21             System.out.println(simpleDateFormat.parse(str));
22         } catch (ParseException e) {
23             e.printStackTrace();
24         }
25     }
26 
27     /**
28      * 练习题:
29      *
30      *
31      */
32     @Test
33     public void test2(){
34        String time="";
35        Date date=new Date();
36        long times= date.getTime();//获得当前的时间戳
37         long days=times/(1000*60*60*24)+1;
38         System.out.println(days);
39         if (days%5==0&&days%5==4){
40             System.out.println("在晒网");
41         }else {
42             System.out.println("在打鱼");
43         }
44     }
45     /**
46      * Calender日历类(抽象类)的使用:
47      * 1;实例化:因为是abstract类不可 **直接** 实例化,必须通过实现子类(GregorianCalender)的方法进行实例化
48      * 方式一:创建子类对象
49      * 方式二:调用其静态方法getInstance();此方法会返回一个calender对象
50      * 2:常用方法:
51      * get()
52      */
53     @Test
54     public void test3(){
55        Calendar calendar= Calendar.getInstance();
56         System.out.println(calendar.get(Calendar.DAY_OF_WEEK_IN_MONTH));//得到天数
57         System.out.println(calendar.getTime());
58         SimpleDateFormat simpleDateFormat=new SimpleDateFormat();
59         System.out.println(simpleDateFormat.format(calendar.getTime()));
60     }
61 }

对于localDateTime类

 

 1 /**
 2  * LocalDate,LocalTime,LocalDateTime的使用
 3  * 说明:localDateTime使用的比较多
 4  * 实例化的方法:now():输出当前的时分秒
 5  */
 6 public class LocalTimeTest {
 7     @Test
 8     public void test() {
 9         //now方法:获取当前的时间
10         LocalDate localDate = LocalDate.now();
11         LocalTime localTime = LocalTime.now();
12         LocalDateTime localDateTime = LocalDateTime.now();//now方法实例化
13         System.out.println(localDate);
14         System.out.println(localDateTime);
15         System.out.println(localTime);
16     }
17     @Test
18     public  void test2(){
19         //of方法:可以获取自己指定设置的时间
20         LocalDateTime localDateTime=LocalDateTime.of(2020,10,20,17,30,25,630);
21         System.out.println(localDateTime);
22         //get()方法:获取当前的一些天数,月数等等
23         System.out.println(localDateTime.getDayOfWeek());
24         System.out.println(localDateTime.getHour());
25         //with()方法:设置当前的一些天数,月数等等
26         System.out.println(localDateTime.withHour(23));
27     }
28     /**
29      * localDateTime对应的解析的DateTimeFormatter类,可以将localDateTime的对象输出的时间格式进行设置
30      * 然后使用format方法进行输出
31      */
32     @Test
33     public  void test4(){
34         /**
35          *  localDateTime于DateTimeFormat之间的使用
36          *  DateTimeFormat与simpleDateFormat的区别在于创建对象的方式不一样
37          *  DateTimeFormat通过 DateTimeFormat date=DateTimeFormat.ofPattern()方法来得到对象
38          *  simpleDateFormat可以通过构造器直接创建对象
39          *  localDateTime类也是通过调用now方法实例化
40          */
41         System.out.println("**********localDateTime类");
42         LocalDateTime localDateTime=LocalDateTime.now();
43         System.out.println(localDateTime);
44         DateTimeFormatter dateTimeFormatter=DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
45         System.out.println(dateTimeFormatter.format(localDateTime));
46         /**
47          * Date与simpleDateFormat之间的使用
48          * Date类与Calender类的getTime方法不一样:前者输出的是毫秒数,后者输出的是当前时间
49          */
50         System.out.println("***********Date类");
51         Date date1=new Date();
52         System.out.println(date1);
53         SimpleDateFormat simpleDateFormat=new SimpleDateFormat();
54         System.out.println(simpleDateFormat.format(date1));
55         System.out.println(date1.getTime());
56         /**
57          * Calender类的使用
58          * 必须通过调用getInstance方法得到对象,因为是抽象类,此方法属于子类
59          */
60         System.out.println("************Calender类");
61         Calendar calendar=Calendar.getInstance();
62         System.out.println(calendar.getTime());
63     }
64 }

 

上一篇:常用父类实体


下一篇:DataUtils 时间工具类