常用类
1.日期的时间类:
时间戳(timestamp):距离特定时间的时间间隔。计算机时间戳是指距离历元(1970-01-01,计算机中时间2019-04-29 14:14:00是该时间距离历元经过的毫秒数,用long类型存储。
00:00:00:000)的时间间隔(ms)。时间本质上是一个整形。
2.date:类 Date 表示特定的瞬间,精确到毫秒。Date
类本质上拥有一个long
fastTime属性的包装类,提供了很多属性和方法用于快速获取年月日、时分秒。而fastTime就是时间戳。
3.时间比较:public static void main(String[] args) {
// 比较两个时间
Dated1 = new Date();
Dated2 = new Date(d1.getTime()+1000);
System.out.println(d1.before(d2));
System.out.println(d1.after(d2));
System.out.println(d1.compareTo(d2));
System.out.println(d1.equals(d2));
// d1.getTime() - d2.getTime()
// setTime:改变Date对象的时间戳
d1.setTime(d1.getTime()+24*3600*1000);
System.out.println(d1);
}
4.日期时间的格式化
1.把Date对象格式化成特定的字符串
2.把特定的格式的字符串解析成Date对象
5.Calendar:Calendar是日历类,本质上内部拥有一个属性long time。表示该日历所具体的时间戳。
同时Calendar内部通过对time的运算计算出很多日历字段,把这些日历字段存在一个容器中,并提供set/get方法用于设置或者访问这些字段。
6.Math:Math 类包含用于执行基本数学运算的方法。例如,随机数、平方、立方。
7.枚举:枚举是由一组固定的常量组成的类型,自定义数据类型。
[修饰符] enum enumName{
常量值1,
常量值2,
常量值3…
常量值n[;]
}
枚举的常量值一定是可列举的有限值。常量值的类型都是public static final
Gender 是一种自定义的数据类型,可以用于声明变量,且变量的取值必须是枚举值的其中一个。gender的值必须是男或者女或者保密。
java中所有的枚举类型都继承于Enum类。可以把枚举类型看出一个类。
8.枚举和字符串转化:
public static void main(String[] args) {
// 声明一个Gender枚举类型的变量gender,并取值为男
Gendergender = Gender.男;
// 枚举值->字符串
System.out.println(gender.toString());
// 字符串串-> 枚举值
Stringstr = "保密";
// 可能产生IllegalArgumentException 非法参数异常
Gendergender2= Enum.valueOf(Gender.class, str);
System.out.println(gender2);
}
9.枚举和switch:
public enum Week {
MONDAY,
TUESDAY,
WEDNESDAY,
THURSDAY,
FRIDAY,
SATURDAY,
SUNDAY;
}
public static void main(String[] args) {
// 需求:有一个变量表示星期几,输出对于的教学安排
Weekweek = Week.TUESDAY;
switch (week) {
case MONDAY:
case TUESDAY:
case THURSDAY:
case FRIDAY:
case SATURDAY:{
System.out.println("上课");
break;
}
case WEDNESDAY:
case SUNDAY:{
System.out.println("练习");
break;
}
}
}
枚举的其他方法
public static void main(String[] args) {
// 枚举变量的其他方法
Weekweek = Week.SUNDAY;
System.out.println(week.name());
System.out.println(week.ordinal());
}
总结
[if !supportLists]1. [endif]只能够取特定值中的一个
[if !supportLists]2. [endif]使用enum关键字
[if !supportLists]3. [endif]所有的枚举类型隐性地继承自 java.lang.Enum。(枚举实质上还是类!而每个被枚举的成员实质就是一个枚举类型的实例,他们默认都是public static final的。可以直接通过枚举类型名直接使用它们。)
[if !supportLists]4. [endif]强烈建议当你需要定义一组常量时,使用枚举类型