Java 8中双冒号(::)中未处理的异常[重复]

Posted

技术标签:

【中文标题】Java 8中双冒号(::)中未处理的异常[重复]【英文标题】:Unhandled exception in double colons (::) in Java 8 [duplicate] 【发布时间】:2018-09-07 00:26:30 【问题描述】:

我正在关注这个 spring.io tutorial。有这样一个函数:

@RequestMapping(method = RequestMethod.GET)
    Collection<Bookmark> readBookmarks(@PathVariable String userId) throws UserNotFoundException 
        this.validateUser(userId);
        List<BookmarkResource> bookmarkResourceList = bookmarkRepository.findByAccountUsername(userId).stream().map(BookmarkResource::new).collect(Collectors.toList()) ;
        return this.bookmarkRepository.findByAccountUsername(userId);
    

虽然我在函数签名处抛出了 UserNotFoundException,但它仍然在双冒号处出现 Unhandled Exception。我不知道如何抛出该异常。 任何帮助将不胜感激!

【问题讨论】:

【参考方案1】:

在 Java 8 Streams 中,您不能使用引发检查异常的方法。您可以将代码包装在 try/catch 中,或者抛出未经检查的异常。

如需全面解答,请参阅this question。

【讨论】:

以上是关于Java 8中双冒号(::)中未处理的异常[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Python中双冒号作用

for循环中未处理的异常

C++中双冒号(两个冒号)::的作用

php中双冒号::的用法

numpy中双冒号的作用

Java中未处理的异常错误,即使使用try-catch也是如此