博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
比较器Comparator的使用
阅读量:6293 次
发布时间:2019-06-22

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

  hot3.png

Comparator其实是一个策略类的模式,在java中如果需要将方法1作为参数传递给方法2那么在没有出现lambda表达式的时候,其实还有一种方式可以实现,那就是使用接口的方式,如比较器接口Comparator 如:

class Test {    public String[] sort(String[] strArrys) {        Arrays.sort(strArrys, new Comparator
() { @Override public int compare(String o1, String o2) { return o1.length() - o2.length(); } }); return strArrys; }}

以这种方式使用虐名内部类时,将会在每次执行调用的时候创建一个新的实例,如果sort方法被重复的执行,考虑将对象存储到静态的final域里,并重用它,如:

class Test {    private static class StrComparator implements Comparator
, Serializable { @Override public int compare(String o1, String o2) { return o1.length() - o2.length(); } } public static final Comparator
STRING_COMPARATOR = new StrComparator(); public String[] sort(String[] strArrys) { Arrays.sort(strArrys, STRING_COMPARATOR); return strArrys; }}

 

转载于:https://my.oschina.net/feinik/blog/836090

你可能感兴趣的文章
点播转码相关常见问题及排查方式
查看>>
[arm驱动]linux设备地址映射到用户空间
查看>>
弗洛伊德算法
查看>>
【算法之美】求解两个有序数组的中位数 — leetcode 4. Median of Two Sorted Arrays
查看>>
精度 Precision
查看>>
Android——4.2 - 3G移植之路之 APN (五)
查看>>
Linux_DHCP服务搭建
查看>>
[SilverLight]DataGrid实现批量输入(like Excel)(补充)
查看>>
秋式广告杀手:广告拦截原理与杀手组织
查看>>
翻译 | 摆脱浏览器限制的JavaScript
查看>>
闲扯下午引爆乌云社区“盗窃”乌云币事件
查看>>
02@在类的头文件中尽量少引入其他头文件
查看>>
JAVA IO BIO NIO AIO
查看>>
input checkbox 复选框大小修改
查看>>
BOOT.INI文件参数
查看>>
vmstat详解
查看>>
新年第一镖
查看>>
unbtu使用笔记
查看>>
OEA 中 WPF 树型表格虚拟化设计方案
查看>>
Android程序开发初级教程(一) 开始 Hello Android
查看>>