IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    java 枚举(Enum)类型比较

    asuncool@gmail.com(yihaomen)发表于 2016-05-17 08:44:24
    love 0
    在刚毕业的学生中,有些东西经常喜欢用定义常量的整形或者字符串的方式来比较, 这种方式不是不好,但有时候更好的是利用java 中的枚举来比较,判断,调用。相比之下会更好,所以弄个简单的例子在这里,给新员工培训的时候也正好用

    在java 中,其实可以直接用 ==  判断枚举是否相等.

    一个简单的枚举定义
    程序代码 程序代码

    public enum Language {
        JAVA,
        PYTHON,
        NODE,
        NET,
        RUBY
    }


    利用 == 去比较
    程序代码 程序代码

    public class Test {

        public static void main(String[] args) {

            // Covert string to enum
            //Language enumObj = Language.valueOf("java".toUpperCase());

            Language enumObj = Language.JAVA;
            
            if (enumObj == Language.JAVA) {
                System.out.println("Welcome Java");
            } else if (enumObj == Language.NET) {
                System.out.println("Welcome .Net");
            } else if (enumObj == Language.NODE) {
                System.out.println("Welcome Node JS");
            } else if (enumObj == Language.PYTHON) {
                System.out.println("Welcome Python");
            } else if (enumObj == Language.RUBY) {
                System.out.println("Welcome Ruby");
            } else {
                System.out.println("Hello World");
            }

        }

    }


    在 switch 总使用
    程序代码 程序代码

    public class Test {

        public static void main(String[] args) {

            Language enumObj = Language.PYTHON;

            switch (enumObj) {
                case JAVA:
                    System.out.println("Welcome Java");
                    break;
                case NET:
                    System.out.println("Welcome .Net");
                    break;
                case NODE:
                    System.out.println("Welcome Node JS");
                    break;
                case PYTHON:
                    System.out.println("Welcome Python");
                    break;
                case RUBY:
                    System.out.println("Welcome Ruby");
                    break;
                default:
                    System.out.println("Hello World");
                    break;
            }

        }

    }


沪ICP备19023445号-2号
友情链接