Java枚举教程快速掌握使用指南


你是否遇到过这样的情况?在判断用户状态时用0、1、2这样的魔法数字,三个月后自己都看不懂代码;处理订单类型时用字符串比较,结果因为拼写错误导致系统崩溃...这些困扰Java新手的难题,其实有个优雅的解决方案——枚举(Enum)!

一、枚举究竟是什么?

想象你有个装糖果的盒子,里面只能放特定口味的糖果。枚举就像这个盒子,它:

  • 预先定义好固定数量的常量值
  • 比普通常量更安全可靠
  • 自带类型检查功能
  • 可以添加专属方法和属性

二、手把手创建第一个枚举

// 定义星期枚举public enum Weekday { MONDAY,TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY}

使用时就像调用静态常量:

Weekday today = Weekday.MONDAY;if(today == Weekday.SATURDAY) { System.out.println("周末快乐!");}

三、枚举的高级打开方式

1. 给枚举添加超能力

public enum PizzaSize { SMALL("小号", 25), MEDIUM("中号", 30), LARGE("大号", 35); private String description; private int diameter; PizzaSize(String desc, int cm) {this.description = desc;this.diameter = cm; } public String getDescription() {return description; }public double calculateArea() {return Math.PI * Math.pow(diameter/2.0, 2); }}

2. 实战应用场景

  • 代替魔法数字:订单状态、错误代码
  • 有限选项集合:颜色类型、支付方式
  • 单例模式实现
  • 策略模式中的具体策略

四、避开这些常见坑点

  • 不要用==比较枚举的序数(ordinal())
  • 避免在枚举构造函数中调用外部方法
  • 枚举常量必须放在类的最前面
  • switch语句处理枚举记得写default分支

小编观点:当你下次准备用final定义常量时,先问问自己——这个值是否属于某个固定集合?如果是,毫不犹豫地抄起枚举这个利器吧!


上一篇:Mac新手快速入门指南

下一篇:if函数使用方法教程


Copyright © 2002-2019 k262电脑网 www.k262.cn 皖ICP备2020016292号
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!QQ:251442993 热门搜索 网站地图