java 集合精简之路

本文结合了Java8的一些新特性,以List的sort方法为例,做了一些写法精简的演示,本文只是抛砖引玉,希望能够给各位猿带来一些启发。

// 初始化集合
List<String> list = new ArrayList<>();
for (int i = 0; i < 49; i++) {
    list.add(i + "");
}
//第一种 不嫌麻烦版
Comparator<String> comparator = new Comparator<String>() {
    @Override
    public int compare(String o1, String o2) {
        return o1.compareTo(o2);
    }
};
list.sort(comparator);
// 第二种 匿名内部类-码农最爱版
list.sort(new Comparator<String>() {
    @Override
    public int compare(String o1, String o2) {
        return o1.compareTo(o2);
    }
});
// 第三种 lambda-懒人最爱版
list.sort((o1, o2) -> o1.compareTo(o2));

代码瞬间清爽不少有木有?省下来的时间都够打一局Dota了(向鸿洋致敬)

// 第四种 双冒号符-终极魔改版
list.sort(String::compareTo);

注意:考虑到这种写法过于凶残,所以千万不要让你的项目经理看到,他会炸了的!

(::是方法引用,有兴趣的同学点这里everything new in java8)

以上四种方法的作用相同,本文只是简单的用了String类做演示。好了机智的你快去试一试吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值