可以通过三种方式比较两个枚举常量:

使用Enum类的compareTo()方法

使用Enum类的equals()方法

使用==运算符

Enum类的compareTo()方法比较同一枚举类型的两个枚举常量。它返回两个枚举常量的序数差。如果两个枚举常量相同,则返回零。

示例

以下代码将打印-3,因为LOW(ordinal = 0)和URGENT(ordinal = 3)的序数的差为-3。

负值表示正在比较的常数发生在比较对象之前。

enum Level {

LOW, MEDIUM, HIGH, URGENT;

}

public class Main {

public static void main(String[] args) {

Level s1 = Level.LOW;

Level s2 = Level.URGENT;

// s1.compareTo(s2) returns s1.ordinal() - s2.ordinal()

int diff = s1.compareTo(s2);

System.out.println(diff);

}

}

上面的代码生成以下结果。

-3

实例-2

Enum类的equals()方法比较两个枚举常量的相等性。枚举常量只等于自身。equals()方法可以在不同类型的两个枚举常量上调用。

enum Level {

LOW, MEDIUM, HIGH, URGENT;

}

public class Main {

public static void main(String[] args) {

Level s1 = Level.LOW;

Level s2 = Level.URGENT;

System.out.println(s1.equals(s1));

}

}

上面的代码生成以下结果。

true

可以使用等于(==)运算符来比较两个枚举常量的相等性。等于(==)运算符的两个操作数必须是相同的枚举类型。

¥ 我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

java enum比较_Java枚举比较相关推荐

  1. java enum 随机_Java 枚举(enum)

    1.枚举(enum) enum是一个特殊的类,代表一组常量(不可更改的变量,如,final变量). 要创建enum,请使用enum关键字(而不是类或接口),并用逗号分隔常量.请注意,它们应使用大写字母 ...

  2. java enum 变量_java枚举使用详解

    package com.ljq.test; /** * 枚举用法详解 * * @author jiqinlin * */ public class TestEnum { /** * 普通枚举 * * ...

  3. java enum 序号_Java的枚举enum示例详解

    一. 什么是枚举 枚举是一种数据类型,具有集合的一些特点,可以存放多个元素,但存储对象有限且固定,枚举也有比较常见的使用场景,如我们需要表达性别(男.女),颜色(红.黄.蓝),星期(星期一.星期二.. ...

  4. java枚举类型enum用法_java枚举类型enum用法和原理介绍【传智播客】

    Enum枚举类型 Enum的全写是Enumeration,这个词的翻译是列举.逐条陈述.细目.在程序语言中,枚举类型是一种特殊的数据类型(常用的数据类型比如字符串.整型),这种数据类型的变量值限定在固 ...

  5. java枚举类型enum用法_Java枚举类型——Enum的简单用法

    枚举类型是Java1.5的新特性,是指由一组固定的常量组成合法的类型.Java中由关键字enum来定义一个枚举类型.我们可以使用枚举来取代用public final static修饰的一批相关数据.如 ...

  6. java enum变量_java enum

    枚举类 (enum) 在某些情况下,一个类的对象时有限且固定的,如季节类,它只有春夏秋冬4个对象这种实例有限且固定的类,在 Java 中被称为枚举类: 在 Java 中使用 enum 关键字来定义枚举 ...

  7. 枚举类型enum用法_Java枚举深度解读,看这篇就够了

    作者 | 涛GuoGuo的跟屁虫丶博Ke 来源 | urlify.cn/aaamQf 66套java从入门到精通实战课程分享 Java枚举 1.枚举类概念的理解与定义 一个类的对象是有限个,确定的,我 ...

  8. java switch enum对象_Java枚举类(enum)5种常见用法和3种内部方法,详细附代码

    文章目录 Java枚举类(enum)重点用法和内部方法,附代码 一.Java 枚举类(enum) 详解5种常见的用法 1.常量 2.支持switch 3.向枚举中添加新方法 4.覆盖枚举的方法 5.实 ...

  9. c enum能像java一样吗_Java枚举替代我如何做到这一点?

    通过编码MIDI处理程序来自学Java.程序需要做的一件事是在MIDI音符编号及其对应的紧凑字符串表示形式之间来回转换.我看过使用枚举设置,但是由于命名限制,您无法执行类似的操作 c-1, c#-1, ...

最新文章

  1. python程序的原理_Python程序的执行原理(转)
  2. Android 修改Progressbar 旋转速度
  3. oracle 回滚段介绍(三)
  4. 华为云用什么吸引 150 万开发者?
  5. MySQL默认库可以删_个人总结:Sql(一:创建删除修改库表||附:mysql数据类型及默认值)...
  6. 如何计算tomcat线程池大小?
  7. 3767(按姓名排序)
  8. 拒绝外部投资、融资及收购,Epic是如何成为美国电子病历“一姐”的?
  9. 最新仿技术导航网源码 全开源自助友链系统
  10. lol新加坡服务器中英文文件,lol手游新加坡服中文补丁
  11. 所有程序员都应该知道的 6 个软件开发步骤
  12. ROS学习之error解决记录
  13. 150. Evaluate Reverse Polish Notation逆波兰表达式
  14. vue使用高德地图关键字搜索功能的实例代码(踩坑经验)
  15. [工作记事] Ubuntu 编译安装PHP以及gd库使得支持jepg
  16. source tree ui操作对应的git命令
  17. java.security.cert.CertificateException: X.509 not found,X.509证书找不到
  18. iPhone最强悍对抗者——HTC崛起的秘密
  19. 打通MySQL架构和业务的任督二脉
  20. 慎用chrome密码记住功能

热门文章

  1. XXE payload
  2. 两个div并排显示 div居中显示
  3. 配置 cnpm 及可能出现的问题
  4. 【JavaWeb】web开发中的绝对路径和相对路径
  5. 华创期货:谈谈短线交易远离亏损和骗局
  6. LocalDate时间生成
  7. iview-admin使用Iconfont-阿里巴巴矢量图标库的时候,多个Iconfont合并如何使用
  8. DDD - CQRS 概念
  9. vmware虚拟机和windows PC机构建无线局域网
  10. canvas实现浮雕效果