栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java基础细碎知识点《枚举》

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java基础细碎知识点《枚举》

1.什么是枚举?

在数学和计算机科学中,枚举是一个被命名为整型常数的集合,枚举在生活中也很多比如:

星期的表示 : SUNDY、MONDY、TUESTDAY、WEDNESDAY、THURSDAY、FRIDAY、SATURDAY

性别 : FEMALE女、MALE男

简单来说,枚举就是一个集合。当一个类的对象是有限个且个数确定的时候,我们就可以定义一个枚举来存放这些对象。

2.ENUM类

java.lang.Enum类是SUM公司提供的java语言的公共基类,我们使用enum关键字来定义枚举类,我们定义的枚举类是隐式继承Enum类的

3.为什么使用枚举类

package Test01;

public class EnumTest01 {
    public static void main(String[] args){
       boolean seccess = divide(10,2);
       System.out.println(seccess?"程序执行成功":"程序执行失败");
       boolean seccess2 = divide(10,0);
       System.out.println(seccess2?"程序执行成功":"程序执行失败");
    }
    

    //既然最后的结果是boolean类型的数据,那我们就让这个静态方法返回boolean,因为true和false恰好表示了两种不同的状态
    public static boolean divide(int a,int b){
        try {
            int c = a / b;
            //程序执行到此处没有发生异常表示程序执行成功,但是返回一个int类型的数据,在设计的时候就不恰当。我们在下面改造一下
            return true;
        }catch (Exception e){
            return false;
        }
    }
    
}

4.使用枚举来改造程序

package Test01;

public class EnumTest02 {
      public static void main(String[] args){
          Result result=divide(10,2);
          System.out.println(result == Result.SUCCESS ?"程序运行成功":"程序运行失败" );
      }
      
    public static Result divide(int a,int b){
        try {
            int c = a / b;
            return Result.SUCCESS;
        }catch (Exception e){
            return Result.FALSE;
        }
    }
}
enum Result{
    SUCCESS,FALSE;
}

5.枚举近似于(实际上就是)一个类,这个类里面的所有属性都是常量

public enum Color {
    
    RED,BLUE,YELLOW,BLACK
}


6.枚举在switch选择语句中的使用

 switch语句支持枚举类型
 switch也支持String、int
 低版本的JDK,只支持int
 高版本的JDK,支持int、String、枚举。
 byte short char也可以,因为存在自动类型转换。
public class SwitchTest {
    public static void main(String[] args) {
        switch (Season.SPRING) {
            case SPRING:
                System.out.println("春天");
                break;
            case SUMMER:
                System.out.println("夏天");
                break;
            case AUTUMN:
                System.out.println("秋天");
                break;
            case WINTER:
                System.out.println("冬天");
                break;
        }

    }
}

 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/590451.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号