Java基础

您所在的位置:网站首页 什么是枚举算法的概念 Java基础

Java基础

2024-07-10 04:54| 来源: 网络整理| 查看: 265

什么是枚举

Java中的枚举是一种类型,顾名思义:就是一个一个列举出来。所以它一般都是表示一个有限的集合类型,它是一种类型,在维基百科中给出的定义是:

在数学和计算机科学理论中,一个集的枚举是列出某些有穷序列集的所有成员的程序,或者是一种特定类型对象的计数。这两种类型经常(但不总是)重叠.。枚举是一个被命名的整型常数的集合,枚举在日常生活中很常见,例如表示星期的SUNDAY、MONDAY、TUESDAY、WEDNESDAY、THURSDAY、FRIDAY、SATURDAY就是一个枚举。

出现的原因

在Java5之前,其实是没有enum的,所以先来看一下Java5之前对于枚举的使用场景该怎么解决?这里我看到了一片关于在Java 1.4之前的枚举的设计方案:

public class Season { public static final int SPRING = 1; public static final int SUMMER = 2; public static final int AUTUMN = 3; public static final int WINTER = 4; }

这种方法称作int枚举模式。可这种模式有什么问题呢?通常我们写出来的代码都会考虑它的安全性、易用性和可读性。 首先我们来考虑一下它的类型安全性。当然这种模式不是类型安全的。比如说我们设计一个函数,要求传入春夏秋冬的某个值。但是使用int类型,我们无法保证传入的值为合法。代码如下所示:

private String getChineseSeason(int season){ StringBuffer result = new StringBuffer(); switch(season){ case Season.SPRING : result.append("春天"); break; case Season.SUMMER : result.append("夏天"); break; case Season.AUTUMN : result.append("秋天"); break; case Season.WINTER : result.append("冬天"); break; default : result.append("地球没有的季节"); break; } return result.toString(); }

因为我们传值的时



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3