博客
关于我
Java Lambda 方法引用方式入门控制台输出HelloWorld
阅读量:315 次
发布时间:2019-03-04

本文共 1133 字,大约阅读时间需要 3 分钟。

Java Lambda借尸还魂   HelloWorld

package com.lius.jDemo;import java.util.function.Consumer;public class perdicateTest {    /**     * 实现控制台输出     * @param args     */    public static void main(String[] args) {        // 定义函数        Consumer consumer = System.out::println;        // 执行函数        consumer.accept("hello World!");    }}

 

Java Lambda 的魅力

Java Lambda 是 Java 程序员的好帮手。它允许我们使用函数式编程,将复杂的逻辑以简洁的方式表达。通过 Lambda 表达式,可以在不写多行代码的情况下完成任务,这对开发效率有着显著的提升。

在本次示例中,我们创建了一个名为 perdicateTest 的类,目的是实现控制台输出。通过定义 Consumer 接口,我们可以将任意的可消费对象传递给相应的操作。在这里,我们使用 System.out::println 来处理输出操作,这样可以方便地打印字符串。

代码解析

代码的核心部分是定义 Consumer 接口,并将 System.out::println 赋值给 consumer 变量。这样,我们就可以通过 consumer.accept("hello World!") 这一行代码来实现输出操作。这种方法简洁高效,充分体现了 Lambda 的优势。

需要注意的是,Consumer 接口要求处理的对象类型必须是 String 或者其他类型。但在本例中,我们直接使用 String 类型,这样可以直接传递字符串参数进行输出。

实际应用中的优势

Java Lambda 在实际应用中有着广泛的用途。例如,在 GUI 应用程序中,我们可以使用 Lambda 表达式来定义按钮点击事件的处理逻辑,这样代码更加简洁明了。同时,Lambda 还可以用来定义线程或递归函数,进一步提升代码的可读性。

此外,Lambda 的匿名性质使得它在某些场景下非常有用。例如,当我们需要在集合中对元素进行处理时,可以直接使用 map 方法和 Lambda 表达式来进行操作,这样代码更加简洁。

总之,Java Lambda 是一个强大的工具,它能够帮助我们更高效地编写代码,同时提高代码的可读性和维护性。通过合理使用 Lambda,我们可以让我们的代码更加简洁,实现更复杂的功能。

转载地址:http://sjnq.baihongyu.com/

你可能感兴趣的文章
NN&DL4.7 Parameters vs Hyperparameters
查看>>
NN&DL4.8 What does this have to do with the brain?
查看>>
nnU-Net 终极指南
查看>>
No 'Access-Control-Allow-Origin' header is present on the requested resource.
查看>>
NO 157 去掉禅道访问地址中的zentao
查看>>
no available service ‘default‘ found, please make sure registry config corre seata
查看>>
No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
查看>>
no connection could be made because the target machine actively refused it.问题解决
查看>>
No Datastore Session bound to thread, and configuration does not allow creation of non-transactional
查看>>
No fallbackFactory instance of type class com.ruoyi---SpringCloud Alibaba_若依微服务框架改造---工作笔记005
查看>>
No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalanc
查看>>
No mapping found for HTTP request with URI [/...] in DispatcherServlet with name ...的解决方法
查看>>
No mapping found for HTTP request with URI [/logout.do] in DispatcherServlet with name 'springmvc'
查看>>
No module named 'crispy_forms'等使用pycharm开发
查看>>
No module named cv2
查看>>
No module named tensorboard.main在安装tensorboardX的时候遇到的问题
查看>>
No module named ‘MySQLdb‘错误解决No module named ‘MySQLdb‘错误解决
查看>>
No new migrations found. Your system is up-to-date.
查看>>
No qualifying bean of type XXX found for dependency XXX.
查看>>
No qualifying bean of type ‘com.netflix.discovery.AbstractDiscoveryClientOptionalArgs<?>‘ available
查看>>