常用类枚举和DATE的介绍

常用

时间类

时间戳的内容:就是距离特定时间的时间间隔。,本质上也是一种整形(long)。

例如:计算机时间戳就是距离历元(1970-01-01 00:00:00:000)的时间间隔。

世界标准时间(GMT又称UT),格林尼治时间,世界协调时。

我国位于时区的东八区。

 Date

Date 表示特定的瞬间,精确到毫秒。

Date 类本质上拥有一个long fastTime属性的包装类,提供很多属性和方法用于快速获取年月日、时分秒。而fastTime就是时间戳。

 

p ublic static void main(String[] args) {

Date date =new Date();

System.out.println(date);

long time =date.getTime();

System.out.println(time);

 long g =0;

Date date1 =new Date(g);

 

         

}

 

 日期时间的格式化

[1]Date对象格式化成特定的字符串

SimpleDateFormat  df = new SimpleDateFormat();

String dateStr = df.format(date);

System.out.println(dateStr);

[2]把特定的格式的字符串解析Date对象

public static void main(String[] args) {

 

String str = "2019-04-29 15:48:00";

 

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

// 把子串->Date

try {

Date date = df.parse(str);

System.out.println(date);

} catch (ParseException e) {

e.printStackTrace();

}

}

 Calendar

calendar是日历类,本质内部拥有一个属性long time。表示该日历所具体的时间戳。同时calendar内部通过对时间的运算出很多日历字段,把这些日历字段存在一个容器中,并提供set/get方法用设置或者访问这些字段。

因为calendar是一个抽象类,所以只能用工厂设计模式构建一个对象。

calendar cal =calendar.getInstance();

System.out.println(cal.toString());

 

下列一些具体获取的对象的具体方法:

// 获取年

System.out.println(cal.get(Calendar.YEAR));

// 获取月,索引从0开始,0-表示1

System.out.println(cal.get(Calendar.MONTH));

System.out.println(cal.get(Calendar.DAY_OF_MONTH));

 

//

System.out.println(cal.get(Calendar.HOUR_OF_DAY));

//

System.out.println(cal.get(Calendar.MINUTE));

//

System.out.println(cal.get(Calendar.SECOND));

System.out.println(cal.get(Calendar.MILLISECOND));

 

// 获取星期 一周的第一天是周日开始

System.out.println(cal.get(Calendar.DAY_OF_WEEK));

 

 

// 本月的第一天和本月的最后一天

System.out.println(cal.getActualMinimum(Calendar.DAY_OF_MONTH));

System.out.println(cal.getActualMaximum(Calendar.DAY_OF_MONTH));

 Math

math类包含用于执行基本数学运算的方法。例如随机数 平方 立方 以及圆等等。

例如:

pow(x,y)表示x的y次方。

System.out.println(Math.pow(2, 3));

Math.random随机数

加入要产生闭区间【m,n】,

(int)(Math.random()*(n-m+1))+m;

枚举

 枚举简介

枚举由一组固定的常量组成的类型,自定义数据类型。语法:

[修饰符] enum enumName{

常量值1,

常量值2,

....

常量值n;

 

}

枚举的常量值一定是可列举的有限值,常量值的类型都是 public static final。

 枚举和字符串转化

public static void main(String[] args) {

 

// 声明一个Gender枚举类型的变量gender,并取值为男

Gender gender = Gender.;

 

 

// 枚举值->字符串

System.out.println(gender.toString());

 

// 字符串串-> 枚举值

String str = "保密";

// 可能产生IllegalArgumentException 非法参数异常

Gender gender2 = Enum.valueOf(Gender.class, str);

System.out.println(gender2);

 

}

 

总结

  1. 只能够取特定值中的一个
  2. 使用enum关键字
  3. 所有的枚举类型隐性地继承自 java.lang.Enum。(枚举实质上还是类!而每个被枚举的成员实质就是一个枚举类型的实例,他们默认都是public static final的。可以直接通过枚举类型名直接使用它们。)
  4. 强烈建议当你需要定义一组常量时,使用枚举类型

 

posted on 2019-04-29 20:53  轩舞  阅读(519)  评论(0编辑  收藏  举报