Java->操作员

发布于 2025-01-23 13:59:10 字数 175 浏览 0 评论 0原文

我知道- >用于使用语法() - > {}的lambda表达式。

但是我看到了此代码:file-> file.isfile() - 没有(){}。它做什么?

I know that -> is used for lambda expressions with the syntax ()->{}.

But I saw this code: file -> file.isFile() - with no () and {}. What does it do?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

旧夏天 2025-01-30 13:59:10

()当您有一个参数时,不需要{}当您的lambda主体是单个表达式时,不需要。

参见 java tutorial a href =“ https://docs.oracle.com/javase/specs/jls/se17/sse17/html/jls-15.html#jls-15.27” rel =“ nofollow noreferrer”> java specification 语法的形式描述。

() is not required when you have a single argument and {} is not required when your lambda body is a single expression.

See the Java tutorial for further information and the Java Specification for a more formal description of the syntax.

永不分离 2025-01-30 13:59:10

正如费德里科(Federico)回答的那样,对于单一参数,您不需要(),对于,语句仅返回一个值,并且不做其他任何事情,您不需要{}

我想为他的贡献做出的添加:

您提出的代码表示,有一个函数,将文件作为参数。然后,返回其.filile()

换句话说,您也可以通过定义一种方法来达到相同的目标:

<private/protected/public> boolean myLovelyMethod(File file){
    return file.isFile();
}

lambda功能使其短一点。如果您不打算重复使用该方法,则最好使用lambda。

As Federico answered, for the single arguments you do not need () and for the statements only return a value and do not do anything else, you do not need {}.

The addition I want to make to his contribution:

The code you put means, there is a function, that takes file as a parameter. Then, returns its .isFile().

In other words, you can also reach the same aim by defining a method:

<private/protected/public> boolean myLovelyMethod(File file){
    return file.isFile();
}

Lambda function just makes it a little bit shorter. If you are not going to re-use the method, may be better to use lambda.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文