java 枚举类介绍

导读:本篇文章讲解 java 枚举类介绍,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

java枚举类一般用来定义有限个,确定的常量。

和 static final 是一样的效果

     static表明这个属性是类层面的,只有一个,所有的实例化对象都共用这一个,但是可以修改。

     final属性不能修改,是一个常量。

枚举类更加直观,类型安全。使用常量则会有以下几个缺陷:

  1. 类型不安全。若一个方法中要求传入季节这个参数,用常量的话,形参就是int类型,开发者传入任意类型的int类型值就行,但是如果是枚举类型的话,就只能传入枚举类中包含的对象。

  2. 没有命名空间。开发者要在命名的时候以SEASON_开头,这样另外一个开发者再看这段代码的时候,才知道这四个常量分别代表季节。

语法规则

所有的枚举都继承自java.lang.Enum类

示例

public enum Color {
    RED, GREEN, BLANK, YELLOW
}
    public static void main(String[] args) {

        System.out.println(Color.GREEN);//输出为:GREEN
        System.out.println( isRed( Color.BLANK ) ) ;  //结果: false
        System.out.println( isRed( Color.RED ) ) ;    //结果: true

    }


    static boolean isRed( Color color ){
        if ( Color.RED.equals( color )) {
            return true ;
        }
        return false ;
    }

常用的函数

Color[] colors = Color.values();//.values()返回对象数组,方便遍历所有的枚举类
for (int i = 0; i < colors.length; i++) {
     System.out.println(colors[i]);
}
//输出:
RED
BLUE
......
Color color1 = Color.valueOf("YELLOW");
// 创建一个color枚举类对象,去找Color枚举类中名字是YELLOW的属性,找到的话就令
// color1 = Color.YELLOW;
//找不到就抛异常 Exception in thread "main" java.lang.IllegalArgumentException: No enum constant com.Color.YELLOW
//

部分内容摘自

【JAVA】浅谈java枚举类

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/92906.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!