java 枚举
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java 枚举,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1810字,纯文字阅读大概需要3分钟。
内容图文
枚举是JDK1.5引入的小功能,但是却对我们的开发带来了极大的帮助。
首先我们应该知道什么是枚举?
枚举就是把集合里的对象元素 一个一个提取出来!比如说 ,你买了一合巧克力, 里面有草莓味的 、有香草口味的 、有苹果口味的 、你想把他们拿出来, 就必须用“手”一个一个把他们拿出来 并且一次只能取一个。 这里的手就是枚举器,你取的动作就是枚举的过程。从代码来看,简单讲就是:枚举是限定有限可能值的一种手段。
我们为什么要使用枚举?
使用枚举提高了代码的可读性与可维护性,降低了程序出错的几率。
比如:我们写一个实体Person类:
public class Person { private String name; private int age; private String sex; Person(String name, int age, String sex) { this.age = age; this.name = name; this.sex = sex; } publicint getAge() { return age; } publicvoid setAge(int age) { this.age = age; } public String getName() { return name; } publicvoid setName(String name) { this.name = name; } public String toString() { return "姓名为:" + this.name + ",年龄为:" + this.age + ",性别:" + this.sex; } }
但是,但我们创建对象时:Person p=new Person("赵江",20,"男");感觉好像没什么问题,但是仔细观察你会发现如果创建对象时是:Person p=new Person("赵江",20,"逗逼");此时,创建的对象依旧能成功,但是“逗逼”这个性别是不存在的,因此这就是个需要改善的地方。而枚举,则能够很好的解决这个问题。
以下是修改后的代码:(重点是红色部分,即枚举的使用)
public class Person { private String name; private int age; private Sex sex; public enum Sex { MAN("男"), FEMALE("女"); private String sex; private Sex(String sex) { this.sex = sex; } @Override public String toString() { return this.sex; } }; public static void main(String[] args) { Person p = new Person("001", 1, Sex.MAN); System.out.println(p); } Person(String name, int age, Sex sex) { this.age = age; this.name = name; this.sex = sex; } publicint getAge() { return age; } publicvoid setAge(int age) { this.age = age; } public String getName() { return name; } publicvoid setName(String name) { this.name = name; } public String toString() { return "姓名为:" + this.name + ",年龄为:" + this.age + ",性别:" + this.sex; } }
此时,从修改后的代码来看,无论如何Person对象的实例的性别已不可能是“逗逼”,而只能是“男”或“女”。
如何使用枚举?
关于如何使用枚举,网上有一篇不错的文章:《java枚举7种常见的用法》
原文:http://www.cnblogs.com/scetopcsa/p/3890847.html
内容总结
以上是互联网集市为您收集整理的java 枚举全部内容,希望文章能够帮你解决java 枚举所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。