Java中的枚举类型有哪些优势?

问题阐述

在很多语言中都有枚举类型,作为后来居上的Java语言,其枚举类型有何优势?

专家解答

Java语言枚举类型比其他语言都强大,其具体表现如下。

(1)枚举类型都继承了Enum类

Enum类中包含了常用的枚举操作。例如判断枚举元素的关系、枚举元素的名称(定义时使用的字符串)、枚举元素的序数等。

说明:由于Java中支持单继承,因此枚举类型不能再继承其他类。

(2)枚举类型中可以增加域和方法

程序员可以像是用类那样,在枚举中增加域和方法,从而可以完成复杂的操作。

(3)编译器自动为枚举类型增加新方法

编译器在遇到枚举类型时,自动为其增加两个方法:values和valueOf。前者返回一个包含全部枚举元素的数组,后者返回当前字符串对应的枚举元素。

注意:在Enum类中也定义了valueOf方法,它比编译器增加的方法更加灵活,请读者参考API文档。

专家点评

可以使用编译器增加的values方法来获得枚举中全部元素,再用加强版for循环进行遍历。例如

public class Test {

public static void main(String[]args) {

for (DirectionEnum d :DirectionEnum.values()) {

System.out.println(d); //输出枚举中的元素

}

}

}

关于【C语言编程锦囊】,可能你还想知道:

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180317B0F21600?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励