java比较器Comparator

原创 2016年05月31日 15:50:33
//具体的比较类,实现Comparator接口
	import java.util.Comparator;
	import java.util.List;
	import java.util.ArrayList;
	import java.util.Collections;

	class User
	{
		String name;
		String age;
		
		public User(String name, String age) {
			super();
			this.name = name;
			this.age = age;
		}
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
		public String getAge() {
			return age;
		}
		public void setAge(String age) {
			this.age = age;
		}
		
	}
	class ComparatorUser implements Comparator{

	 public int compare(Object arg0, Object arg1) 
	 {
		  User user0=(User)arg0;
		  User user1=(User)arg1;
	
		   //首先比较年龄,如果年龄相同,则比较名字
	
		  int flag=user0.getAge().compareTo(user1.getAge());
		  if(flag==0)
		  {
			  return user0.getName().compareTo(user1.getName());
		  }
		  else
		  {
			  return flag;
		  }  
	 }
	 
	}




	//测试类
	public class Main 
	{

		 public static void main(String[] args)
		 {
			  List userlist=new ArrayList();
			  userlist.add(new User("dd","4"));
			  userlist.add(new User("aa","1"));
			  userlist.add(new User("ee","5"));
			  userlist.add(new User("bb","2"));  
			  userlist.add(new User("ff","5"));
			  userlist.add(new User("cc","3"));
			  userlist.add(new User("gg","6"));
			  
			  ComparatorUser comparator=new ComparatorUser();
			  Collections.sort(userlist, comparator);
			   
			  for (int i=0;i<userlist.size();i++)
			  {
				  User user_temp=(User)userlist.get(i);
			      System.out.println(user_temp.getAge()+","+user_temp.getName()); 
			  }
		 }
	}

版权声明:本文为博主原创文章,未经博主允许不得转载。

Java中比较器 Comparator 的简单例子

import java.util.Arrays; import java.util.Comparator; public class ComparatorTest { public stat...
  • ruabkuxyb
  • ruabkuxyb
  • 2016年04月01日 15:57
  • 324

Java Map集合利用比较器Comparator根据Key和Value的排序

Java Map集合利用比较器Comparator根据Key和Value的排序
  • xiaokui_wingfly
  • xiaokui_wingfly
  • 2015年01月21日 11:12
  • 8794

java比较器Comparator

package com.java.demo.Comparator; import java.sql.Date; import java.util.ArrayList; import java...
  • mdj_bj
  • mdj_bj
  • 2012年07月10日 18:12
  • 370

java 对象比较器重写Comparator

java对象比较器,重写了Comparator方法,HashMap基于values进行排序的实现
  • UnionIBM
  • UnionIBM
  • 2016年12月16日 15:33
  • 1184

java中的Comparator和Comparable比较器的用法

Comparable和Comparator都是用来实现集合中的排序的,Comparator位于包java.util下,而Comparable位于包java.lang下,Comparable接口将比较代...
  • happylifex
  • happylifex
  • 2015年03月27日 16:14
  • 6996

Java基础之Comparator比较器接口使用原理

路人宅 2017-04-26 00:22 java.util.Comparator是比较器接口,如果我们需要控制某个类的次序并且该类本身不支持排序,那么就可以建立一个类比较器来进行排序,实现...
  • u011277123
  • u011277123
  • 2017年04月26日 09:51
  • 1096

java中用Comparator比较器对ArrayList排序

boy 男生 对象
  • zmywly
  • zmywly
  • 2014年09月28日 19:27
  • 5270

浅谈Java比较器comparable/comparator

在笔者学习比较器的过程中,学了就忘,忘了就学,这效率实在是太过低下。笔者思量了会儿,辗转反侧究其原因,才知这比较器的知识在Java大家族中”地位”过低,让人不得不忽略它.这就像是一浪荡男儿常年混迹在花...
  • qq_37014990
  • qq_37014990
  • 2017年04月30日 15:16
  • 208

java中TreeSet的Comparator比较器的三种使用方法

java中treeset使用Comparator进行比较的三种方法1.让元素具备比较性。 比如我们比较两个人。我们定义一个person类,并且实现Comparable接口 例: pu...
  • zqr772791008
  • zqr772791008
  • 2016年04月06日 15:49
  • 2964

Java 对象比较器 comparator 的作用及用法

排序的算法是我们最常用的算法,初学程序,每个人都尝试过排序。但只是局限于简单的排序。 如将下列数字进行排序 1,3,5,8,3,6 于是我们得出结果 1,3,3,5,6,8 将下列字母(字符...
  • u014049880
  • u014049880
  • 2016年07月15日 18:25
  • 4070
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java比较器Comparator
举报原因:
原因补充:

(最多只允许输入30个字)