将一种枚举设置为另一种枚举 java

Set one kind of enum to another enum kind of enum in java

我在实体 class 和响应 class 中都定义了相同的枚举。我想将其中一个 class 中的枚举 属性 的值设置为另一个 class 中的枚举 属性。下面是示例代码。我是 Java 和 IT 行业的新手。

@Getter
@Setter
public class ResponseClass{
    enum Type{
        USD, CSD, MXN, BRL;
    };
    
    private Type type;
}
@Entity
@Getter
@Setter
public class EntityClass{
    enum Type{
        USD, CSD, MXN, BRL;
    };
    
    @Column(name = "type")
    private Type type;
}
public class Main{
    public static void main(){
        EntityClass entity= new EntityClass();
        
        ResponseClass response = ...; //Got value for this variable from REST API
        
        entity.setType(response.getType()); // I want to achive this
    }
}

如果您从 EntityResponse class 中声明 enum Type 会更好。然后你可以对两个 classes 使用相同的枚举。

您可以在三个级别中的任何一个级别声明枚举:

  • 分开class
  • 嵌套在 class
  • 本地(in Java 16+

对于你的情况,我建议你使用第一种而不是第二种。