java 集合框架-TreeSet练习
来源:互联网 发布:u8用友软件 编辑:程序博客网 时间:2024/06/05 13:22
import java.util.*;/*练习:按照字符串长度排序。字符串本身具备比较性,但是它的比较方式不是所需要的。这时就只能使用比较器注意:在方式二中: int num=new Integer(str1.length()).compareTo(new Integer(str2.length())); 此时num的值有三种可能。正数、负数、零。千万不要写下面的代码: if(num==1)return 1;num不一定等于1。我们在函数中返回的0,1,-1只是代表三种情况:零,正数,负数。这个一定要注意。*/class MyCompare implements Comparator //自定义比较器{public int compare(Object obj1,Object obj2){if(!(obj1 instanceof String) || !(obj2 instanceof String))throw new RuntimeException("不是字符串!");String str1=(String)obj1;String str2=(String)obj2;/*方式一if(str1.length()>str2.length())return 1;if(str1.length()==str2.length()){return str1.compareTo(str2);}return -1;*//*方式二*/int num=new Integer(str1.length()).compareTo(new Integer(str2.length()));if (num==0){return str1.compareTo(str2);}return num;}}//如果没有上面的自定义类,那么TreeSet会按照自然顺序进行排序(字符串的字母自然排序)class TreeSetTest1 {public static void main(String[] args) {TreeSet ts=new TreeSet(new MyCompare());//TreeSet ts=new TreeSet();ts.add("abcd");ts.add("dgf");ts.add("aakuop");ts.add("po");ts.add("hello");ts.add("hello");ts.add("world");ts.add("werttif");ts.add("hello");Iterator it=ts.iterator();while(it.hasNext()){sop((String)it.next());}}public static void sop(Object obj){System.out.println(obj);}}
0 0
- java 集合框架-TreeSet练习
- 集合框架(TreeSet练习)
- java集合框架的练习之TreeSet集合的运用
- Java 集合框架-TreeSet
- java 集合框架-TreeSet
- java集合框架的练习之TreeSet集合与ArrayList集合的混合使用
- TreeSet集合框架的使用练习
- 集合框架——Set(TreeSet练习)
- Java集合框架-Set(TreeSet)
- java集合框架系列---TreeSet
- 集合框架--TreeSet集合练习之字符串长度排序
- 集合框架--TreeSet集合
- 集合框架-TreeSet集合
- java学习笔记:集合框架之TreeSet
- java学习笔记:集合框架之TreeSet
- Java集合框架-2.【Set】【HashSet】【TreeSet】
- java--集合框架的Hashset和Treeset
- Java学习笔记 - 集合框架(TreeSet)
- C++分割字符串和trim
- Unreal Engine 4 —— Pixel Depth Offset的使用心得
- 蓝桥杯历届-奇怪的数列
- js/jsp操作cookie的方法
- CentOS 6.3下Samba服务器的安装与配置
- java 集合框架-TreeSet练习
- JS逻辑运算符&&与||的妙用
- 网络请求工具类
- 链表——合并K个排序的链表
- C++模板与泛型编程基础
- 此 ObjectContext 实例已释放,不可再用于需要连接的操作。
- CSS基础
- RBF神经网络与BP神经网络的比较
- 图像处理感想