Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
两个枚举的java比较_Java_Enums_Comparison - Fatal编程技术网

两个枚举的java比较

两个枚举的java比较,java,enums,comparison,Java,Enums,Comparison,给定测试代码: @Test public void testEnumAreEqual() { for (var someEnum : SomeEnum.values()) { Assertions.assertTrue(EnumUtils.isValidEnum(OtherEnum.class, someEnum.name())); } for (var otherEnum : OtherEnum.values()) { Assertions.

给定测试代码:

@Test
  public void testEnumAreEqual() {
    for (var someEnum : SomeEnum.values()) {
      Assertions.assertTrue(EnumUtils.isValidEnum(OtherEnum.class, someEnum.name()));
    }
    for (var otherEnum : OtherEnum.values()) {
      Assertions.assertTrue(EnumUtils.isValidEnum(SomeEnum.class, otherEnum.name()));
    }
  }
我想检查两个给定的枚举是否包含相同的值


是否有更优雅的方法来实现这一点?

构建一组名称:

Set<String> someEnumNames = 
    Arrays.stream(SomeEnum.values())
        .map(Enum::name)
        .collect(toSet());

您的意思是要检查
enum E1{A,B;}
enum E2{A,B;}
是否相等,因为它们都具有值A和B?@Thomas:correct,yes@SMA不应该工作,不同的时刻你为什么复制你的?人们试图在那个问题上帮助你,但你选择忽略那个帮助,而是发布一个新问题。
assertEquals(someEnumNames, otherEnumNames);