当前位置: 首页 > news >正文

基础网站建设代码最新的军事新闻

基础网站建设代码,最新的军事新闻,房地产网站建设方案书,跨境电商开店要多少钱前言 在Java 8中,可以使用方法引用(Method Reference)来简化Lambda表达式。方法引用是一种更简洁易懂的语法形式,可以通过指定方法的名称代替Lambda表达式。 本文将介绍方法引用的用法和实现原理,并结合代码案例详细…

前言

在Java 8中,可以使用方法引用(Method Reference)来简化Lambda表达式。方法引用是一种更简洁易懂的语法形式,可以通过指定方法的名称代替Lambda表达式。

本文将介绍方法引用的用法和实现原理,并结合代码案例详细讲解。

方法引用的介绍

方法引用是Java 8中的新特性,它允许直接引用已有 Java 类或对象的方法,并传递它们作为 Lambda 表达式的参数。

方法引用的语法为:对象名::方法名类名::静态方法名

下面是一个简单的例子:

List<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
list.forEach(System.out::println);

上述代码中,list.forEach(System.out::println)使用了方法引用语法,打印了列表中的每个元素。

方法引用的用法

方法引用可以分为四种类型:

对象::实例方法

这种方法引用使用一个实例对象来调用方法,语法为:对象名::方法名

下面是一个例子:

List<Integer> list = Arrays.asList(1, 2, 3);
list.forEach(System.out::println);

上述代码中,System.out::println表示对输出流 System.out 调用方法 println。它等同于 Lambda 表达式 (x) -> System.out.println(x)

类::静态方法

这种方法引用使用一个类来调用它的静态方法,语法为:类名::静态方法名

下面是一个例子:

List<Integer> list = Arrays.asList(1, 2, 3);
Collections.sort(list, Integer::compareTo);

上述代码中,Integer::compareTo 表示对 Integer 类调用 compareTo 方法。它等同于 Lambda 表达式 (x, y) -> Integer.compare(x, y)

类::实例方法

这种方法引用使用一个 Class 的实例来调用它的实例方法,语法为:类名::方法名

下面是一个例子:

String str = "hello world";
Function<Integer, Character> fun = str::charAt;

上述代码中,str::charAt 表示对字符串对象 str 调用 charAt 方法。它等同于 Lambda 表达式 (x) -> str.charAt(x)

构造函数引用

这种方法引用使用构造函数来创建新的对象实例,语法为:类名::new

下面是一个例子:

Supplier<List<String>> supplier = ArrayList::new;

上述代码中,ArrayList::new 表示使用 ArrayList 的无参构造函数来创建供应商(Supplier),它等同于 Lambda 表达式 () -> new ArrayList<>()

方法引用的实现原理

方法引用的实现原理就是调用关键方法 java.util.function.MethodHandles.lookup() ,它可以获得一个 MethodHandles.Lookup 对象,该对象可以通过 findVirtualfindStaticfindConstructor 等方法来查找类中的方法。

下面是一个例子:

MethodHandle handle = MethodHandles.lookup().findVirtual(String.class, "length", MethodType.methodType(int.class));

上述代码中,MethodHandles.lookup().findVirtual 表示在 String 类中查找名为 length 的实例方法,并返回一个 MethodHandle 对象。

在 Java 8 中,方法引用被实现为 Lambda 表达式的语法糖,即当一个 Lambda 表达式只调用一个已经存在的方法时,就可以简化成方法引用的形式,从而提高代码的可读性和可维护性。

总结

本文介绍了Java方法引用的用法和实现原理,相信对于初学者来说有所帮助。Java方法引用可以简化代码,提高代码可读性和可维护性,适用于大多数情况。在实际开发中,根据场景选择合适的方法引用类型,能够使代码变得更加高效,易于维护。

http://www.yidumall.com/news/12378.html

相关文章:

  • 网站备案需要资料手机优化什么意思
  • 大连品牌官网建站乐陵市seo关键词优化
  • 网网站建设与制作重庆网站建设哪家好
  • 电子商务网站建设与管理课程设计免费下载百度并安装
  • 英文网站报价外贸订单怎样去寻找
  • 文库网站建设开发百度店铺
  • 企业做网站优点重庆seo排名扣费
  • 做外挂网站空间百度搜索引擎提交入口
  • 海南房地产网站重庆网站页面优化
  • 中国建设银行嵊州市支行网站自媒体平台注册官网
  • 专业微网站开发重庆森林粤语
  • 静态网站怎么更新如何做好网站推广优化
  • 北京模板建站公司搜索引擎有哪些软件
  • 微网站首选公司互联网广告
  • 饭店餐厅网站建设文案代写
  • 做行业门户网站注意什么详细的营销推广方案
  • 网站具有购买功能需要怎么做公众号软文范例100
  • 网站开发主管岗位职责说明书国际新闻界期刊
  • 网站建设人员配置聚合搜索引擎入口
  • 购物网站制作多少钱aso排名服务公司
  • 页游平台网站济南疫情最新情况
  • 企业做网站维护中国十大软件外包公司
  • 为企业做网站要向谁索要资料怎么推广淘宝店铺
  • 创建网站投资多少钱网站建设服务公司
  • 本溪网站设计公司百度官方网站入口
  • 栗田工业大连有效公司网站哪年做的网址大全导航
  • 做原油期货关注什么网站平台推广营销
  • 武汉建设银行行号查询网站关于进一步优化当前疫情防控措施
  • 建立网站需要哪几个手机优化是什么意思
  • eclipse做购物网站域名被墙查询检测