代码训练营——TreeSet比较器
2016-05-07 22:57
260 查看
练习:按照字符串长度排序 /* 字符串本身具备比较性。但是它的比较方式不是所必需的。 这时就只能使用比较器. */ import java.util.*; class TreeSetTest { public static void main(String[] args) { TreeSet ts = new TreeSet(new StrLenCompare()); ts.add("abcd"); ts.add("cc"); ts.add("cba"); ts.add("aaa"); ts.add("z"); ts.add("hahah"); Iterator it = ts.iterator(); while(it.hasNext()) { System.out.println(it.next()); } } }
class StrLenCompare implements Comparator { public int compare(Object o1,Object o2) { String s1 = (String)o1; String s2 = (String)o2; int num = new Integer(s1.length()).compareTo(new Integer(s2.length())); if(num==0) { return s1.compareTo(s2); } return num; } }
结果:
z
cc
aaa
cba
abcd
hahah
相关文章推荐
- C#二进制文件读写
- c++ 中 pair 的 使用方法
- 我的第三个springboot项目,servlet实现一个转盘抽奖程序
- Android源码浅析(二)——Ubuntu Root,Git,VMware Tools,安装输入法,主题美化,Dock,安装JDK和配置环境
- Android源码浅析(二)——Ubuntu Root,Git,VMware Tools,安装输入法,主题美化,Dock,安装JDK和配置环境
- java回顾第一天
- 使用Java实战RDD与Dataframe动态转换
- 《java入门第一季》之面向对象(形式参数和返回值问题的深入研究2)
- 《java入门第一季》之面向对象(形式参数和返回值问题的深入研究2)
- 我的进步是站在巨人的肩膀,java随机数详解
- C++ Note
- JavaWeb学习笔记——JavaBean的保存范围和删除
- Java多线程编程4--Lock的实例--实现生产者/消费者模式:一对一、多对多交替打印
- 常用的Smali代码
- c++实验5-数组选择
- CSharpGL(22)实现顺序无关的半透明渲染(Order-Independent-Transparency)
- Python 时间处理函数
- 小白说编译原理-8-简单minus-c语言编译树(支撑类)
- 2016/5/6 thinkphp ①框架 ② 框架项目部署 ③MVC模式 ④控制器访问及路由解析 ⑤开发和生产模式 ⑥控制器和对应方法创建 ⑦视图模板文件创建 ⑧url地址大小写设置 ⑨空操作空控制器 ⑩项目分组
- 使用深度搜索分析心理调查问卷的研究