Math
枚举
枚举(Ja
va5新特性)
枚举类型在Java中是一种引用数据类型。
合理使用枚举类型可以让代码更加清晰、可读性更高,可以有效地避免一些常见的错误。 什么情况下考虑使用枚举类型?
这个数据是有限的,并且可以一枚一枚列举出来的。
枚举类型是类型安全的,它可以有效地防止使用错误的类型进行赋值。
枚举如何定义?以下是最基本的格式:
enum 枚举类型名 { 枚举值1, 枚举值2, 枚举值3, 枚举值4 }
通过反编译(javap)可以看到: 所有枚举类型默认继承java.lang.Enum,因此枚举类型无法继承其他类。 所有的枚举类型都被final修饰,所以枚举类型是无法继承的 所有的枚举值都是常量 所有的枚举类型中都有一个values数组(可以通过values()获取所有枚举值并遍历)
枚举的高级用法
普通类中可以编写的元素,枚举类型中也可以编写。
静态代码块,构造代码块 实例方法,静态方法 实例变量,静态变量 枚举类中的构造方法是私有化的(默认就是私有化的,只能在本类中调用) 构造方法调用时不能用new。直接使用“枚举值(实参);”调用。 每一个枚举值相当于枚举类型的实例。 枚举类型中如果编写了其他代码,必须要有枚举值,枚举值的定义要放到最上面, 最后一个枚举值的分号不能省略。 枚举类因为默认继承了java.lang.Enum,因此不能再继承其他类,但可以实现接口。
第一种实现方式:在枚举类中实现。
第二种实现方式:让每一个枚举值实现接口。
Random
java.util.Random 随机数生成器(生成随机数的工具类)
常用构造方法: Random() 常用方法: int nextInt();
获取一个int类型取值范围内的随机int数 int nextInt(int bound); 获取[0,bound)区间的随机数 double nextDouble(); 获取[0.0, 1.0)的随机数。