java创造匿名对象的两种方法

在java中有时候需要一些匿名对象的使用。可能有些小伙伴拿还不会创造,其实我们在学习一些方法时都或多或少的接触过。本篇所要讲到的创造匿名对象总结了两种方法,分别是静态工具方法和Lambda表达式,我们会在下文中为大家进行分析和实例代码展示,一起来看看吧。

1、静态工具方法

Collections.sort接受一个list,和一个Comparator接口作为输入参数,Comparator的实现类可以对输入的list中的元素进行比较。通常情况下,你可以直接用创建匿名Comparator对象,并把它作为参数传递给sort方法。

List<String>names=Arrays.asList("peter","anna","mike","xenia");

Collections.sort(names,newComparator<String>(){
@Override
publicintcompare(Stringa,Stringb){
returnb.compareTo(a);
}
});

2、Lambda表达式

Collections.sort(names,(Stringa,Stringb)->{
returnb.compareTo(a);
});

可以看到,这段代码就比之前的更加简短和易读。但是,它还可以更加简短:

Collections.sort(names,(Stringa,Stringb)->b.compareTo(a));

只要一行代码,包含了方法体。你甚至可以连大括号对{}和return关键字都省略不要。不过这还不是最短的写法:

Collections.sort(names,(a,b)->b.compareTo(a));

Java编译器能够自动识别参数的类型,所以可以省略掉类型不写。

原文来自:https://www.py.cn
© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容