翻译一下这段java代码:public static CurrencyEnum ofVal(String val) { return Arrays.stream(values()).filter(e -> StringUtils.equalsIgnoreCase(val, e.getVal())).findFirst().orElseThrow(IllegalArgumentException::new); }
时间: 2024-04-27 10:21:05 浏览: 99
这段Java代码定义了一个名为`ofVal`的静态方法,该方法接受一个字符串类型的参数`val`,并返回一个`CurrencyEnum`枚举类型的值。
在方法中,使用`Arrays.stream(values())`获取当前枚举类的所有枚举值,然后通过`filter`方法过滤出一个满足条件的枚举值,条件为传入的`val`与该枚举值的`getVal()`方法返回值相等(使用`StringUtils.equalsIgnoreCase`实现不区分大小写的比较)。
接着使用`findFirst()`方法获取到第一个满足条件的枚举值,如果没有找到则抛出一个`IllegalArgumentException`异常。最后返回找到的枚举值。
阅读全文