0

在我下面的方法中,我在方法net.sf.extJWNL的回调中使用了包中的一个.anyMatch()方法Stream<Object>。但是,我使用的方法会抛出JWNLException. 而不是当前的 try-catch 块,我想throws使用JWNLException.

Dictionary d = Dictionary.getDefaultResourceInstance();
List<POS> POSList =
     new ArrayList<POS>(EnumSet.allOf(POS.class));
boolean isWord = POSList.stream().anyMatch(c -> {
    try {
        return d.getIndexWord(c, word) != null;
    } catch (JWNLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        return true;
    }
});

另外,我无法将其移至单独的方法,因为我需要此方法中的局部变量-dword(参数)

4

1 回答 1

1

您可能需要围绕 lambda 表达式创建一个包装器,该包装器将处理从一段代码中抛出的异常。

请参考以下链接

https://www.baeldung.com/java-lambda-exceptions

于 2019-08-28T21:52:19.360 回答