Scanner类

  1. 所属的包java.util包,需要import导包。
  2. 通过一个带输入流的构造方法创建对象。
  3. 常用实例方法:

    1. nextInt():Int类型
    2. nextFloat():Float类型
    3. next():字符串类型。还能读到空格为截止。
    4. nextLine():前面三个方法都是以回车符结尾,但是不读回车符。这个方法要读回车符。

      System类

  4. 所属的包java.lang包下。不需要导入。

  5. 没有继承,也没有实现。
  6. 不需要创建对象。通过类型就可以访问了。
  7. 有三个静态属性。
    1. in
    2. out:最常用。
    3. error
  8. 常用的方法:

    1. static gc():告诉jvm进行垃圾回收了。
    2. exit(int i);表示当前系统中断。0表示正常退出。
    3. currentTimeMillis();返回值是一个long类型的。返回当前系统时间的毫秒值。
      1. 毫秒值从那天开始的呢?返回当前系统时间与计算机元年(1970/01/01 00:00:00)之间的毫秒差。在中国境内就是08:00:00。两者之差就是得到的这个毫秒值。每次得到的肯定不一样,因为,时间一直在走。

        Date类

  9. 所属的包:通常使用的是,java.util包。还有其他包里面也有Date类。

  10. 通常使用无参数的构造方法,或者带long类型参数的构造方法。无参数就是使用当前系统构建的date对象。带long类型的参数,是时间戳。
  11. 常用的方法:
    1. 重写了toString方法。打印出来date展示的类似:Sat Feb 06 18:50:25 CST 2021
    2. boolean ``x = date.``before``(date1);date是不是在date1之前。都是Date类的对象才行。
    3. after同上。
    4. setTime(long time);设置一个date对象的事件。date对象中应该有一个long的属性,time。然后调用这个方法就能改变时间。
    5. getTime();获得date对象的时间,返回的是毫秒值。
    6. compareTo(Date date);按照顺序比较。得到的值为-1,表示调用的在前,参数在后。得到1表示调用的在后,参数在前。0就是相等。
  12. 我们可以处理一个Date类型的格式。

    DateFormat

    用来格式化Date类的。

  13. 所属的包:java.text。需要导包使用。

  14. 此类是一个抽象类,不能创建对象。通过子类来使用。
  15. SimpleDateFormat类。是DateFormat的子类。所属的包也在java.text里面。
  16. 调用带String参数的构造方法。

    1. 每个字母不是随便写的,里面的符号(-)可以随便写。
    2. 具体的规则看:时间格式化的规则
      1. SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
  17. 举个例子:

    1. SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    2. String time1 = sd.format(date1); // format方法进行格式化,有很多方法重载。
    3. System.out.println(time1); // 2021-02-06 18:50:25 类似这种

    Calendar类

    1.1 版本之后出现的。
    想要操作时间的一部分。Date类做不了。比如:增加日期等。

  18. 所属的包:java.util,需要导包

  19. 有构造方法,用protected修饰的。通常会调用Calendar.getInstance();。得到系统当前时间的calendar对象。
  20. calendar里面包含一个datedate里面包含一个time
  21. 常用方法:

    1. afterbeforsetTime,getTime跟Date类提供的一样。但是setTime参数是一个Date类型的。,getTime方法返回的值是Date类型的,而不是long类型的。
    2. getTimeZone();返回的是时区的。具体的去api文档看。
    3. set和get方法。操作和设置Date的一部分,比如年份,月份,日期,小时。
    4. 得到的month是从0开始。 ```java // 获取时间
      int year = ca.get(Calendar.YEAR); System.out.println(year);

    int month = ca.get(Calendar.MONTH); System.out.println(month);

    int day = ca.get(Calendar.DAY_OF_MONTH); System.out.println(day);

// 设置时间 ca.set(Calendar.YEAR, 2015); System.out.println(ca.getTime());

// 获取时期 TimeZone tz = ca.getTimeZone(); System.out.println(tz.getID()); // Asia/Shanghai System.out.println(tz.getDisplayName());// 中国标准时间 ```

TimeZone 时区相关类

  1. java.util包
  2. 可以通过calendar对象.getTimeZone()获取,或TimeZone.getDefault();
  3. 常用方法:
    1. getId();获取时区ID。
    2. getDisplayName();获取时区展示的名字。