一文解决Java的日期类,数字格式化类等

获取系统当前时间

包:java.util.Date;

  • 直接调用无参数构造方法
    Date nowtime = new Date();
  • 日期的格式化
    这时SimpleDateFormat类上场了。
    yyyy 年
    MM 月
    dd 日
    HH 时
    mm 分
    ss 秒
    SSS 毫秒
    例如:
    Date nowtime = new Date();
    SimpleDateFormat times = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS);
    String nowtime = times.format(nowtime);
  • 那如果有个日期字符串怎么装换成Date类型。(还记得Python中的日期反转吗,这里不过是用的不同的方法而已)
    String time = “2020-3-30 10:15:08:06:666”;
    SimpleDateFormat times2 = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss-SSS);
    Date dateTime =times.parse(time);//这里会有异常,后期说到说到。
  • 获取时间戳(毫秒为单位,1970.1.1,24时到现在的时间)
    long nowTimes = System.currentTimeMillis();
    要这个有什么作用呢?
  • 统计一个算法或方法的运行时间。
  • 之后的时间戳减去之前的时间戳。

System类

  • System.out out是System的相关属性和方法。
  • println() 方法不是System类的,是PrintStream类的方法。
  • gc() 建议启动垃圾回收器。
  • currentTimeMillis() 获取时间戳。
  • System.exit(0) 退出JVM.

数字格式化

  • 类DecimalFormat
    表示任意数字 “#”
    代表千分位 " ,"
    代表小数 “.”
    代表不够时补0 “0”

数字类(BigDecimal)

  • BigDecimal 属于大数据,精度极高,不属于基本数据类型,属于java对象(引用数据类型)这是sun提供的类。专门用于财务软件中。
  • 在数学包中,java.math.BigDecimal
    BigDecimal v1 = new BigDecimal (100);
    BigDecimal v2 = new BigDecimal(200);
    BigDecimal v3 = v1.add(v2);
    其他方法查找帮助文档。

随机数类

  • 包 java.util.Random;
  • Random random = new Random();
  • int num = random.nextInt();
  • //产生0到100的数据
    int num2 = random.nextInt(101);
    练习:生成5个不重复的随机数,放到数组中。

枚举类

一文解决Java的日期类,数字格式化类等

  • 可是以后开发中可能遇到返回类型不只两种。
    枚举可以解决这个问题。
  • 可以列举出来的才使用枚举。
    • 枚举也是一种引用数据类型。
      定义:
      enum result{
      Success ,
      Fuailer
      }
      使用:
      result.Success

一文解决Java的日期类,数字格式化类等