Arp*_*t M 9 java lambda java-8
我正在尝试在Map中找到匹配的值,如果找到,我需要抛出IllegalArgumentException.我的代码如下:
final String stringToBeMatched = "someRandomString";
map.values()
.stream()
.filter(a -> stringToBeMatched == a.getField())
.findAny()
.ifPresent(a -> throw new IllegalArgumentException());
Run Code Online (Sandbox Code Playgroud)
我在令牌"throw"上遇到语法错误.我不确定我哪里出错了.
rge*_*man 16
甲拉姆达体可以是一个表达式或语句块.然而,
throw new IllegalArgumentException()
Run Code Online (Sandbox Code Playgroud)
是一个陈述,既不是.用支架围住它,使其成为一个块.
.ifPresent(a -> {throw new IllegalArgumentException(); } );
Run Code Online (Sandbox Code Playgroud)
对于您的下一个问题,请比较您的字符串值.equals,而不是==.
| 归档时间: |
|
| 查看次数: |
5977 次 |
| 最近记录: |