Java基础_枚举类型

感情迁移 提交于 2019-12-05 22:58:52

 

 

  作用:让数据更简洁,更易读,增加代码可读性。

 

  为了用1,2,3,4,5分别表示老师,学生,小组,班主任,后勤,可以直接设置一个变量,让roleType = 1,但这样写代码可读性差。

  也可以定义一个成员类,分别给不同的静态成员赋1,2,3,4,5,在需要调用的地方,直接通过RoleType.xxx去进行变量的赋值,如下:

 

package com.Gary2;

public class CustomEnum {
    public static void main(String[] args) {
        //1老师 2学生 3小组 4班主任 5后勤
        
        //可读性差
//        int roleType = 2;
//        int roleType2 = 5;
        
        //学生
        int roleType = RoleType.STUDENT;
        //后勤
        int roleType2 = RoleType.LOGISTICS;
        
        
        
    }

}
RoleType.java

 

package com.Gary2;

public class CustomEnum {
    public static void main(String[] args) {
        //1老师 2学生 3小组 4班主任 5后勤
        
        //可读性差
//        int roleType = 2;
//        int roleType2 = 5;
        
        //学生
        int roleType = RoleType.STUDENT;
        //后勤
        int roleType2 = RoleType.LOGISTICS;
        
        
        
    }

}
CustomEnum.java

 

  枚举类型就是对RoleType.class进行简化

 

package com.Gary2;

//枚举
public enum RoleTypeEnum {

    //不需要直接赋值,默认从0开始依此增加,实际上是int类型
    TEACHER,
    STUDENT,
    PRINCIPAL,
    HEADTEACHER,
    LOGISTICS
    
}
RoleTypeEnum.java

 

package com.Gary2;

public class CustomEnum {
    public static void main(String[] args) {
        //1老师 2学生 3小组 4班主任 5后勤
        
        //可读性差
//        int roleType = 2;
//        int roleType2 = 5;
        
        //学生
        //int roleType = RoleType.STUDENT;
        //后勤
        //int roleType2 = RoleType.LOGISTICS;
        
        //使用枚举类型
        RoleTypeEnum rt1 = RoleTypeEnum.TEACHER;
        RoleTypeEnum rt2 = RoleTypeEnum.STUDENT;
        System.out.println(rt1);
        System.out.println("取得所代表int类型"+rt1.ordinal());
        
        
    }

}
CustomEnum.java

 

  使用增强for循环遍历枚举类型中的值

  for(RoleTypeEnum rt :RoleTypeEnum.values()) {
    System.out.println(rt);
  }

 

 

package com.Gary2;

public class CustomEnum {
    public static void main(String[] args) {
        //1老师 2学生 3小组 4班主任 5后勤
        
        //可读性差
//        int roleType = 2;
//        int roleType2 = 5;
        
        //学生
        //int roleType = RoleType.STUDENT;
        //后勤
        //int roleType2 = RoleType.LOGISTICS;
        
        //使用枚举类型
        RoleTypeEnum rt1 = RoleTypeEnum.TEACHER;
        RoleTypeEnum rt2 = RoleTypeEnum.STUDENT;
        
        for(RoleTypeEnum rt :RoleTypeEnum.values()) {
            System.out.println(rt);
        }
        
        
        
    }

}
CustomEnum.java

 

 

 

 

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!