- 浏览: 1218017 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (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 1420public static void main(String[ ... -
JAVA中 RETURN与break有何区别
2013-07-08 11:05 1006想看一个例子: public class G { ... -
一位map,二位map变成字符串后,再变成map的解析过程
2011-12-20 09:38 2732public class G { public s ... -
生成必须有大写小写和数字的随机字符串
2011-11-21 22:56 1341public class Teee { public stat ... -
For_循环练习
2011-10-11 10:47 1386【程序2】 题目:判断10 ... -
彩票 31 选 7
2011-09-07 16:16 1010方法一、用集合实现( ... -
java 循环总结
2011-09-07 10:30 9801、for(){} 比较常用的for循环是 for(i ... -
break 和 continue的用法
2011-08-30 16:41 1521break的作用是跳出这个循环(如果这个break或者cont ... -
快速排序原理及java实现
2011-07-14 01:05 2489快速排序是对冒泡排序的一种改进。它的基本思想是:通过一躺排序将 ... -
Collections 类的方法总结
2011-07-11 17:16 1264public class TestCollect { publ ... -
Collections 类的总结
2011-07-11 17:10 9151、有52张扑克牌要随机发牌给四个玩家,并且四个玩家牌的数量是 ... -
有52张扑克牌要随机发牌给四个玩家,并且四个玩家牌的数量是相同的?
2011-07-11 17:08 2010public class TestList { public ... -
关于Arrays.asList的问题
2011-07-10 16:04 1284将数组转成List问题,通常我们习惯这样写成:List ... -
Arrays方法的总结
2011-07-10 03:03 972public class TArrays { public ... -
Arrays集合总结
2011-07-09 20:37 903Arrays.binarySearch();的用法 A ... -
Arrays.binarySearch();的用法。
2011-07-09 20:34 32979Arrays.binarySearch();的用法。 pub ... -
Comparable<T> 和Comparator 的用法区别?
2011-07-07 00:05 1493答:1、Comparable<T>是一个借口里面只 ... -
TreeSet集合总结
2011-07-06 01:57 873TreeSet 集合中 的comparator()和desce ... -
TreeSet 集合中 的comparator()和descendingIterator()方法的应用对比
2011-07-06 01:53 1515TreeSet 集合中 的comparator()和desce ... -
Iterator和listIterator的区别
2011-06-30 21:44 831我们在使用List,Set的时候,为了实现对其数据的遍历,我们 ...
相关推荐
总结起来,`Collections.sort()`是Java中对List进行排序的标准工具,它支持自然排序和自定义排序。了解其工作原理和优化技巧,可以帮助我们在编程实践中更高效地处理数据。通过阅读和理解`Collections.sort()`的源码...
Java Collections.sort()是Java语言中用于对List进行排序的方法,通过使用这个方法可以对List进行默认排序,也可以根据需要实现自定义的排序规则。 默认排序方法 在Java中,Collections.sort()方法可以对List进行...
在Java编程语言中,`Collections.sort()` 方法是一个非常重要的工具,用于对List接口实现的集合进行排序。这个方法使得开发者能够方便地按照指定的顺序排列集合中的元素。本篇文章将详细探讨如何使用 `Collections....
Java中的Collections.sort排序是Java.util.Collections类中的一个静态方法,用于对列表进行排序。下面将详细介绍Collections.sort排序的使用和实现机制。 Collections.sort()方法的使用: Collections.sort()方法...
在Java编程语言中,`Collections` 类是 `java.util` 包中...在 `MySortList.java` 文件中,可能包含了关于 `Collections.sort()` 方法的具体使用示例,而 `Java.jpg` 可能是一个相关的类图或流程图,帮助理解这些概念。
首先,`Collections.sort()`方法在处理列表(List)时,实际上底层调用了`list.sort()`方法。在Java中,`List`是一个接口,具体的实现类如`ArrayList`或`LinkedList`会提供具体的排序实现。在本例中,由于使用了`...
在Java编程语言中,`Collections.sort()` 是一个非常重要的函数,它用于对集合中的元素进行排序。这个函数是 `java.util.Collections` 类的一个静态方法,适用于列表(List)类型的集合。`Collections.sort()` 可以...
在Java编程语言中,`Collections.sort()`方法是一个非常重要的工具,它用于对集合中的元素进行排序。这个方法主要应用于`List`接口的实现类,如`ArrayList`和`LinkedList`等。`Collections.sort()`有两种主要的排序...
Java Collections.sort() 排序代码案例是 Java Collections 框架中一个非常重要的排序算法,通过本文,我们将深入探讨 Java Collections.sort() 排序代码案例的实现细节,并对其进行详细的解释。 Java Collections...
在这个例子中,`Person`对象按年龄先排序,如果年龄相同,则按名字排序。 接下来是查询条件的处理。在Java 8中,引入了流(Stream)API,这极大地简化了集合的过滤操作。例如,如果我们想从一个Person列表中筛选出...
- `Collections.sort()` 方法默认按照自然顺序进行排序,如果需要自定义排序,则需要提供一个 `Comparator` 实例。 - 对于中文排序,需要注意 `Collator` 的使用,因为其内部实现考虑了中文的排序规则。 - 在实际...
对Java集合中的某个字段按照中文拼音排序可以使用多种方法,本文将介绍两种常见的方法。 方法一:使用Comparable接口 在Java中,我们可以使用Comparable接口来实现自定义排序。例如,我们可以创建一个Record类,...
在Java编程中,集合框架是处理数据的重要工具,而Collections.sort方法则是对列表(List)进行排序的关键函数。本文将深入探讨两种使用Collections.sort方法对List排序的方法。 首先,第一种方法是让List中的对象实现...
总的来说,Java提供了多种方式对对象进行排序,包括ArrayList的`Collections.sort()`,HashSet的转换和排序,以及TreeSet的自然排序和Comparator排序。理解这些机制可以帮助我们更好地控制数据结构的排序行为,从而...
在示例中,`Collections.sort(list)`按照默认的自然顺序对元素进行排序,使得`list`变为"123", "123", "aaa", "abc", "xyz"。 3. **`Collections.shuffle(List<T> list, Random rnd)`**:这个方法将列表中的元素...
在 Java 中,对 List 排序可以使用 Collections.sort(list) 方法,但是这种方法只能对基本类型的 List 进行排序,如果 List 中包含的是对象,那么这种方法就不行了。这时需要使用Comparator接口来实现排序。 ...
Collections.sort 方法可以对 List 对象中的元素进行排序,包括日期字符串。 示例代码 下面是一个使用 Java 进行日期排序的示例代码: import java.util.ArrayList; import java.util.Collections; import java....
Java Collections.sort 是 Java 集合框架中的一种静态方法,用于对 List 类型进行排序。该方法有两种参数形式,分别是对基本类型和自定义类的排序。在本文中,我们将通过示例代码来详细介绍这两种用法。 基本类型的...
例如,如果我们有一个`Person`对象的列表,可以按年龄分组: ```java List<Person> people = ...; Map, List<Person>> peopleByAge = people.stream() .collect(Collectors.groupingBy(Person::getAge)); ``` ...
在Java编程中,Collections工具类提供了许多方便的集合操作,其中`sort()`方法是一个非常重要的功能,用于对List类型的集合进行排序。本文将详细介绍`Collections.sort()`方法的两种使用方式及其示例。 ### 一、...