java - 将对象的值与枚举的值进行比较

标签 java enums

我声明 enum 并为每个枚举分配一个值。

public enum RATING {
   G(0), P(12), M(16);
   private int age;

   private RATING(int age){
   this.age = age;
   }
}

我想做这样的事情,但它无法编译。

... if (Customer.getAge() >= Film.getRating()) ...

Customer.getAge() 返回一个 intFilm.getRating() 返回一个 enum RATING

如何将对象的值与 enum 的值进行比较?

最佳答案

此时,您不是将它与枚举的值进行比较,而是与枚举本身进行比较。

像这样改变你的枚举:

public enum RATING {
   G(0), P(12), M(16);
   private int age;

   private RATING(int age){
   this.age = age;
   }

   public int getAge(){
    return this.age;
    }
}

然后像这样比较:

if (Customer.getAge() >= Film.getRating().getAge())

关于java - 将对象的值与枚举的值进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35863916/

相关文章:

java - MapStruct:根据( boolean )值排除属性

java - FifoBuffer - apache 常见集合 4 个替换

python - 根据名称和选项制作一个具有自动值的(类型化)python 枚举

java - 多线程java优化

java - 设计困境——背景还是契约? (Java/ Kotlin )

java - 哪种 Java 的 NoSQL 数据库需要的设置最少?

java - JPA 枚举类型映射。最佳方法

enums - Ada 枚举类型范围

java - 如何创建一个扩展 EnumMap 并调用 super( K.class ) 的通用类 Enum<K> ?

c# - 什么是 C# 枚举中定义的 value__