首页 > 大数据 > Hadoop > 大数据编程入门:Java枚举
Java 枚举是一个特殊的类,一般就表示一组常量,在生活中也可以拿例子来解释 Java 枚举,比如一周有七天,一年有十二个月,人的性别只有男和女等。今天小编将为大家带来大数据编程入门: Java 枚举这篇文章来详细介绍 Java 枚举的用法。

一、 Java 枚举的简单入门
Java 枚举类一般使用 enum 关键字来定义,各个常量被用以逗号来分割。
比如定义一个心情的枚举类。
enum Mood
{
Happy,Sad,Excite;
}
在上面的枚举类Mood 心情常量有 Happy 、 Sad 、 Excite ,分别表示开心、伤心、激动。
使用实例:
enum Mood
{
Happy,Sad,Excite;
}
public class Test
{
// 执行输出结果
public static void main(String[] args)
{
Mood m 1 = Mood.Happy ;
System.out.println( m 1);
}
}
输出结果为:Happy
二、 内部类中使用枚举
枚举类也可以声明在内部类中:
public class Test
{
enum Mood
{
Happy,Sad,Excite;
}
// 执行输出结果
public static void main(String[] args)
{
Mood m 1 = Mood.Happy ;
System.out.println( m 1);
}
}
输出结果为:
Happy
每个枚举都是通过 Class 在内部实现的,所有枚举值都是 public static final 的 。
以上的枚举类Mood 转化在内部类实现:
class Mood
{
public static final Mood Happy = new Mood ();
public static final Mood Sad = new Mood ();
public static final Mood Excite = new Mood ();
}
三、 迭代枚举元素
可以使用for 语句迭代枚举元素:
实例:
enum Mood
{
Happy,Sad,Excite;
}
public class MyClass {
public static void main(String[] args) {
for (Mood myVar : Mood.values()) {
System.out.println(myVar);
}
}
}
运行结果:
Happy
Sad
Excite
四、 在 switch 中使用枚举类
枚举类通常用于switch 语句 ,比如:
enum Mood
{
Happy,Sad,Excite;
}
public class MyClass {
public static void main(String[] args) {
Mood myVar = Mood. Sad ;
switch(myVar) {
case Happy:
System.out.println(" 开心 ");
break;
case Sad:
System.out.println(" 伤心 ");
break;
case Excite:
System.out.println(" 激动 ");
break;
}
}
}
运行结果:
伤心
五、 values(), ordinal() 和 valueOf() 方法
e num 定义的枚举类默认继承Java.lang.Enum 类,实现 java.lang.serializable 和 java.lang.compatible 接口。
values ()、 order ()和 valueof ()方法位于 java.lang. E num 类中:
Values ()返回枚举类中的所有值。
order ()方法可以找到每个枚举常量的索引,就像数组索引一样。
valueOf() 方法返回指定字符串值的枚举常量。
实例:
enum Mood
{
Happy,Sad,Excite;
}
public class Test
{
public static void main(String[] args)
{
// 调用 values()
Mood[] arr = Mood.values();
// 迭代枚举
for (Mood Moo : arr)
{
// 查看索引
System.out.println(Moo + " at index " + Moo.ordinal());
}
// 使用 valueOf() 返回枚举常量,不存在的会报错 IllegalArgumentException
System.out.println(Mood.valueOf("Happy"));
// System.out.println(Mood.valueOf("WHITE"));
}
}
运行结果:

六、 枚举类成员
与普通类一样,枚举可以使用自己的变量、方法和构造函数 , 构造函数只能使用私有访问修饰符,因此不能在外部调用它们。
枚举可以包含具体和抽象的方法 , 如果枚举类具有抽象方法,枚举类的每个实例都必须实现它。
实例:
enum Mood
{
Happy,Sad,Excite;
// 构造函数
private Mood()
{
System.out.println("Constructor called for : " + this.toString());
}
public void MoodInfo()
{
System.out.println("Universal Mood");
}
}
public class Test
{
// 输出
public static void main(String[] args)
{
Mood m1 = Mood.Happy;
System.out.println(m1);
m1.MoodInfo();
}
}
运行结果:

以上就是关于大数据编程入门:Java 枚举的全部内容了,希望这篇文章可以帮助到大家 ~ 如果想了解更多详情,请点击成都加米谷大数据官网吧!成都大数据培训学校、大数据开发培训、数据分析与挖掘,零基础班本月正在招生中,课程大纲及试学视频可免费获取!
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70005624/viewspace-2790640/ ,如需转载,请注明出处,否则将追究法律责任。