当前位置: 首页 > 知识库问答 >
问题:

从匹配枚举[duplicate]的列表元素获取

严远
2023-03-14

我有一个字符串列表,我想检查列表中的任何字符串是否与枚举的值匹配。所以我做了这件事。布尔值工作得很好。但我想从列表中找到匹配的元素(第一个匹配)。

boolean isMatch = Arrays.stream(MyEnum.values())
                        .map(MyEnum::getValue)
                        .anyMatch(myList::contains);
if(isMatch){
//get that matching string from the list .. i.e first matching string
}

共有1个答案

阚砚文
2023-03-14

您可以使用.findfirst()筛选并获得第一个。

Optional<MyEnum> res = Arrays.stream(MyEnum.values())
                        .filter(e -> myList.contains(e.getValue()))
                        .findFirst();

if(res.isPresent()){
   MyEnum data = res.get(); // matched enum
}
 类似资料:
  • 我在python上有一个元素列表,我可以在index.html页面上以下拉列表的形式获得它,并将一个选定的值发送到另一个页面进行处理。问题是如何选择列表中的多个元素。我的意思是只有几个没有或库的元素?

  • 我应该工作,对吧?但它不是!!!!它告诉我dbValue可以转换为RelationActiveEnum...

  • 让我们看看一个需要诉诸于代码的场景,来考虑为何此时使用枚举更为合适且实用。假设我们要处理 IP 地址。目前被广泛使用的两个主要 IP 标准:IPv4(version four)和 IPv6(version six)。这是我们的程序可能会遇到的所有可能的 IP 地址类型:所以可以 枚举 出所有可能的值,这也正是此枚举名字的由来。 任何一个 IP 地址要么是 IPv4 的要么是 IPv6 的,而且不能

  • 有一个简单的: 以及任务对象的列表。如何通过使用获得每个作为的列表。我试过这个: 但它返回

  • 我有一个数字列表L。还有另一个数字列表M。我需要返回一个在L和M中找到的数字列表L。 编辑:从数学上讲,我正在寻找多集交点。 例子: L=3,,4,,5,,,6 M=,7,,,,1 L'=9,1,2,1 我为此编写了以下代码: 虽然它达到了目的,但我想知道是否有一种惯用的Perl6方法可以做到这一点? 一些背景:我一直在尝试一起学习Perl6和Python,并用这两种语言解决相同的难题。Pytho

  • 假设我有这样的枚举 我也有一个类,我想扩展有序[SimpleEnum] 所以在SimpleClass中,我只需要获取附加到相应SimpleEnum val的值。 在java中,我能够声明一个变量的枚举和访问一个实际的值对应于它的这个var,在scala我正在寻找一种方法来获取枚举的实例,并接触到它的值。