java的collections的sort的API
2016-05-06 19:49
197 查看
这里是有关JAVA的collections的sort 的有关知识
一:
二:
杂例:java的Collection的Api
测试代码:
一:
import java.util.ArrayList; import java.util.Collections; import java.util.List; public class SortListDSemo2 { public static void main(String[] args) { List<Point> list=new ArrayList<Point>(); list.add(new Point(4,5)); list.add(new Point(2,4)); list.add(new Point(4,6)); list.add(new Point(9,6)); System.out.println(list); /* * collections 的Sor方法要求排序的集合元素必须实现Comparable接口 * 该接口用于表示可比较 其提供了一个抽象方法comparaTo用于定义比较规则。 * */ Collections.sort(list); System.out.println(list); } }
二:
import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.Comparator; import java.util.List; /** * collections的sort方法有两个不足: * 1:要求我们的集合元素必须实现comparable接口 * 这样就对我们的类有较强的“侵入性”; * 2:有时集合元素实现了comparale接口并定义了比较大小的规则 * 但是该规则不满组我们对排序的需求 * collections提供了一个重载的sort方法: * static void sort(list list,comparable c) * 该重载方法要求我们传入一个额外的比较器 * 按照比较器的规则来比较集合中的元素进行自然排序 * @author soft01 * */ public class Demo1 { public static void main(String[] args) { List<String> list=new ArrayList<String>(); list.add("小明语句16时19分05秒"); list.add("黎明"); list.add("窗前没有光"); System.out.println(list); MyComparator com=new MyComparator(); Collections.sort(list,com); System.out.println(list);
//【<span style="font-family: Arial, Helvetica, sans-serif;">黎明 </span><span style="font-family: Arial, Helvetica, sans-serif;">窗前没有光 小明语句16时19分05秒</span><span style="font-family: Arial, Helvetica, sans-serif;">】</span> } } class MyComparator implements Comparator<String>{ @Override public int compare(String o1, String o2) { return o1.length()-o2.length();//对比集合中元素的长度,比较哪个的元素比较长 } }
杂例:java的Collection的Api
测试代码:
import java.util.ArrayList; import java.util.Collection; /* * java.util.Collection *这是个集合操作 可以存放一组元素,提供了元素的相关问操作 *派生了两个子接口 *List:元素不可重复 *Set:元素可以重复 */ public class Demo1 { public static void main(String[] args) { /*boolezn add(E e) * 向集合中添加一个元素 */ Collection c =new ArrayList(); c.add("one"); c.add("two"); c.add("three"); System.out.println(c); /* * int size() * 获取长度 */ System.out.println("size:"+c.size()); /* * boolean isEempty() * 判断集合是否不包含任何元素 */ boolean isEmpty=c.isEmpty(); System.out.println(isEmpty); /* * void clear() * 清空集合 */ c.clear(); System.out.println(c.isEmpty()); }
相关文章推荐
- spark中transformation操作的各种算子(java版)
- Eclipse中创建新的Spring Boot项目
- 《java与设计模式》之装饰模式详解&Java IO中的装饰器模式
- java中的栈和队列的基础API
- java 异常等基础知识
- [Java]构造方法与方法重载学习笔记
- 用产生随机数的方法产生两个1位整数,求其和与积!Random
- 设计模式之单例模式
- Java通过缓冲区复制一个.java文件。
- java中文乱码问题
- 在web开发中ActionContext和ServletActionContext的比较
- form表单只提交数据,不跳转,在struts2中的应用
- Spring中装配bean的三种主要方式
- java的properties配置文件
- Java判断当前用户数及当前登录用户数工具类-session原理
- Spring MVC程序中得到静态资源文件css,js,图片 文件的路径
- Java多线程之-----实现自己的ThreadFactory
- 20145312 《Java程序设计》第十周学习总结
- spring自动扫描机制
- 关于SpringMVC的后台调试获取的值为空