- 浏览: 1196943 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (706)
- 全部博客(10000) (0)
- java基础 (123)
- 算法及数据结构 (64)
- SSH框架整合与平台系统分析 (11)
- j2ee (46)
- Oracle (95)
- SQL Server (11)
- javaScript (73)
- Ajax (22)
- jQuery (39)
- ExtJs (4)
- jsp (13)
- Servlet (6)
- struts1 (2)
- struts2 (33)
- Ibatis (2)
- hibernate (24)
- Spring (11)
- 设计模式 (8)
- 正则表达式 (9)
- UML (0)
- XML (9)
- linux (19)
- CSS (11)
- FreeMarker (4)
- nginx 与 memcached (6)
- SEO (5)
- Web 服务器 (11)
- junit 与 selenium2 (4)
- MyEclipse 有关的问题 (24)
- 生活杂感 (37)
- 看过的书 (2)
- 技术牛人 (2)
- 需要优化的例子 (3)
- English 学习 (7)
- bug修改的解决方法 (2)
- 数据库实战经验总结 (1)
- 期待解决的问题 (20)
- 等待自己学习的东西 (15)
- 自己公司代码结构总结 (15)
- 企业经营之道 (23)
- 工具管理 (1)
- 世范水晶 (2)
最新评论
-
hustkeai:
第一个方法是不对的
求一个Map中最大的value值,同时列出键,值 -
qq591920734:
java List 排序 Collections.sort() 对 List 排序(首先年龄排序,如果年龄相同,则按名字排序) -
qq591920734:
[color=orange][/color]包女包女不女
java List 排序 Collections.sort() 对 List 排序(首先年龄排序,如果年龄相同,则按名字排序) -
timer_yin:
seagrave 写道这个算法想法不错,但太耗时,我用1、2、 ...
用1、2、2、3、4、5这六个数字,数字排序经典算法 -
hellostory:
日常生活中,我们都不按你上面的那个方法算的!!!
JAVA小函数-计算日期差
//一个POJO例子
public class User {
private int age;
private String name;
public User(String name,int age){
this.name=name;
this.age=age;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
//具体的比较类,实现Comparator接口
public class ComparatoUser implements Comparator {
public int compare(Object arg0, Object arg1) {
User user0=(User)arg0;
User user1=(User)arg1;
// 首先比较年龄,如果年龄相同,则比较名字
int flag=user0.getAge()-(user1.getAge());
if(flag==0){
return user0.getName().compareTo(user1.getName());
}else{
return flag;
}
}
}
//测试类
public class TestUser {
public static void main(String[] args){
List list=new ArrayList();
list.add(new User("aa",12));
list.add(new User("dd",888));
list.add(new User("ff",123));
list.add(new User("cc",123));
list.add(new User("bb",142));
list.add(new User("ww",126));
主要看看拿的那个对象
ComparatoUser com=new ComparatoUser();
Collections.sort(list, com);
for(int i=0;i<list.size();i++){
User u=(User)list.get(i);
System.out.print(u.getAge()+"/");
System.out.println(u.getName());
}
}
}
//&&&&&&&&&&&&&&&&&&&&& 上面和下面的方法实现功能是一样的,注意观察不同点
pojo
public class User implements Comparator<User> {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int compare(User o1, User o2) {
if(o1.getAge()-(o2.getAge())!=0){
return o1.getAge()-(o2.getAge());
}else{
return o1.getName().compareTo(o2.getName());
}
}
}
测试类
public class Test {
public static void main(String[] args){
User u1=new User();
u1.setAge(13);
u1.setName("d");
User u2=new User();
u2.setAge(6);
u2.setName("h");
User u3=new User();
u3.setAge(3);
u3.setName("a");
User u4=new User();
u4.setAge(23);
u4.setName("c");
List<User> al=new ArrayList<User>();
al.add(u1);
al.add(u2);
al.add(u3);
al.add(u4);
//主要观察里面的对象new User();和上面的实现有什么不同
Collections.sort(al,new User());
Iterator ite=al.iterator();
while(ite.hasNext()){
User user=(User)ite.next();
System.out.print(user.getAge()+"/");
System.out.println(user.getName());
}
}
}
发表评论
-
查找 字符串中 重复字符最多的个数
2013-09-03 12:13 1371public static void main(String[ ... -
JAVA中 RETURN与break有何区别
2013-07-08 11:05 977想看一个例子: public class G { ... -
一位map,二位map变成字符串后,再变成map的解析过程
2011-12-20 09:38 2697public class G { public s ... -
生成必须有大写小写和数字的随机字符串
2011-11-21 22:56 1313public class Teee { public stat ... -
For_循环练习
2011-10-11 10:47 1349【程序2】 题目:判断10 ... -
彩票 31 选 7
2011-09-07 16:16 983方法一、用集合实现( ... -
java 循环总结
2011-09-07 10:30 9551、for(){} 比较常用的for循环是 for(i ... -
break 和 continue的用法
2011-08-30 16:41 1483break的作用是跳出这个循环(如果这个break或者cont ... -
快速排序原理及java实现
2011-07-14 01:05 2468快速排序是对冒泡排序的一种改进。它的基本思想是:通过一躺排序将 ... -
Collections 类的方法总结
2011-07-11 17:16 1240public class TestCollect { publ ... -
Collections 类的总结
2011-07-11 17:10 8891、有52张扑克牌要随机发牌给四个玩家,并且四个玩家牌的数量是 ... -
有52张扑克牌要随机发牌给四个玩家,并且四个玩家牌的数量是相同的?
2011-07-11 17:08 1973public class TestList { public ... -
关于Arrays.asList的问题
2011-07-10 16:04 1261将数组转成List问题,通常我们习惯这样写成:List ... -
Arrays方法的总结
2011-07-10 03:03 939public class TArrays { public ... -
Arrays集合总结
2011-07-09 20:37 874Arrays.binarySearch();的用法 A ... -
Arrays.binarySearch();的用法。
2011-07-09 20:34 32903Arrays.binarySearch();的用法。 pub ... -
Comparable<T> 和Comparator 的用法区别?
2011-07-07 00:05 1460答:1、Comparable<T>是一个借口里面只 ... -
TreeSet集合总结
2011-07-06 01:57 847TreeSet 集合中 的comparator()和desce ... -
TreeSet 集合中 的comparator()和descendingIterator()方法的应用对比
2011-07-06 01:53 1492TreeSet 集合中 的comparator()和desce ... -
Iterator和listIterator的区别
2011-06-30 21:44 797我们在使用List,Set的时候,为了实现对其数据的遍历,我们 ...
相关推荐
NULL 博文链接:https://xuedong.iteye.com/blog/1147254
主要介绍了JAVA对list集合进行排序Collections.sort(),需要的朋友可以参考下
主要介绍了Java Collections.sort()实现List排序的默认方法和自定义方法,需要的朋友可以参考下
本文通过两种方法给大家介绍java集合中的Collections.sort方法对list排序,第一种方式是list中的对象实现Comparable接口,第二种方法是根据Collections.sort重载方法实现,对collections.sort方法感兴趣的朋友一起...
字符串数组 排序
主要介绍了JAVA中Collections工具类sort()排序方法,非常具有实用价值,需要的朋友可以参考下。
List<String> location=new ArrayList(); 一行代码轻松搞定混合排序问题 Collections.sort(location, new SortUtils(true));
在项目中由于要解析一个箱单号,要求从小到大的顺序。由于循环从数据库取出来取得值不是按照... 使用指定的比较器对整个 List<T> 中的元素进行排序。 命名空间: System.Collections.Generic 程序集: msco
通常来说,List<T>.sort()可以实现对T的排序,比如List<int>.sort()执行后集合会按照int从小到大排序。如果T是一个自定义的Object,可是我们想按照自己的方式来排序,那该怎么办呢,其实可以用过IComparable接口重写...
用百Collections.reverse(list)即可度。}//先升序排序Collections.sort(list);//再反转Collections.r
但是通常排序算法不得不让程序员在写代码的过程中陷入对底层很多指针和位置的理解,java不希望这样,所以排序大多可以由java帮你做掉,例如,你要对一个数组排序,通过:Collections.sort(list)那么这个list被排序了...
List<T>.sort()可以实现对T的排序,比如List<int>.sort()执行后集合会按照int从小到大排序。如果T是一个自定义的Object,可是我们想按照自己的方式来排序,那该怎么办呢,其实可以用过IComparable接口重写CompareTo...
//如果要对键进行排序Map map=new TreeMap(); Map,String> map=new TreeMap,String>(); //Map map=new HashMap(); map.put(1, "yi"); map.put(23, "er"); map.put(12, "san"); map.put(3, "si"); //遍历...
数组有工具类Arrays,集合也有一个工具类Collections,这里练习一下集合工具类的排序方法,顺便过一下sort排序方法,比较器。 sort方法 sort(List<T> list):根据其元素的natural ordering对指定的列表进行排序。 ...
java 集合类的排序主要是用Collections.sort方法,Collections和Collection是不一样的,前者是类,后者是接口,在这里,我主要是想说明它的sort方法的几种类型, 提示:实现接口的方法时,只需要比较两个数,大的返回1,...
Create List # 新建⼀个list变量 @{list} create list aa bb # 为list追加数据 同Append To List @{list} create list @{list} cc 打印list时,使⽤log many:log many @{list} 若⽤log打印,则写成:log ${list} ...
而在Java类库中有一个Arrays类的sort方法已经实现各种数据类型的排序算法。程序员只需要调用该类的方法即可。 代码演示:Arrays实现排序 public static void main(String[] args) { int[] ages={23, 45,12,76,34,...
List 和 Set 的区别,final finally finalize,Java获取反射的三种方法,Arrays.sort 和 Collections.sort 实现原理 和区别
JAVA 一道编程题目 核心代码: Collections.sort(list, String.CASE_INSENSITIVE_ORDER);//根据指定的字母方式排序
有时候我们需要多列表中的数据进行特定的排序,最近项目中用到的是按名称排序,所以简单来说一下: 效果图: 排序方法: Collections.sort(students, new SortChineseName()); for (Student s : students) { Log...