`
amcucn
  • 浏览: 291431 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

在Java中对集合当中的对象进行排序

阅读更多

近日工作当中需要将一些数据按一定的格式进行排序,而这些数据是从数据库当中查询出来的一些对象的某个属性,无法按此属性进行排序查询。为此想到将对象取出后再将对其按某格式进行排序,这就需要运用到对集合进行排序。经高人指点,发现以下方法比较好用,特记下一笔。

 

/**
	 * 根据分类得到与分类相关的所有品牌信息
	 */
	private Collection getBrandByType(Integer typeId) {
		String hql = "select distinct pt.box.productInfo.brand From ProductTop As pt where pt.box.productInfo.type.id=" + typeId ;
		List allBrandList = utilDao.executeQuery(hql);
		//对集合进行排序
		Collections.sort(allBrandList, new compareList() );
		return allBrandList;
	}
	
	/**
	 * 比较两个对象的大小,实现Comparator接口
	 */
	private class compareList implements Comparator{
		public int compare(Object o1, Object o2) {
			Catagory c1 = (Catagory)o1;
			Catagory c2 = (Catagory)o2;
			String catagoryName1 = c1.getName();
			String catagoryName2 = c2.getName();
//通过比较两个字符串对象来排序。此处可以根据自己的需要写两个对象的具体比较内容
		return catagoryName1.compareTo(catagoryName2);
		}
		
	}

 

大致步骤如下:
首先通过一般的查询得到一组对象集合此处为:allBrandList 。然后使用Collections.sort方法进行排序,在这个方法当中需要一个实现了Comparator接口的类用来比较两个对象大小。
至于两个对象的大小如何比较,是由自己来定义的,此处只使用了String类当中的compareTo方法,也就是Java当中已定义好了的字符比较方法。如果我们有自己的特别需要,则需要自己重写此方法。
关键的代码:

Collections.sort(allBrandList, new compareList());

 

 

 

 

1
0
分享到:
评论

相关推荐

    Java对集合中的对象排序

    对集合中的对象进行排序,例如:List中存放了User对象,则可根据User对象的某一个属性进行顺序or倒序的排序

    java集合某个字段按照中文拼音排序.docx

    java集合某个字段按照中文拼音排序 java集合某个字段按照中文拼音排序

    Java:集合排序(正序、倒序)的方法

    java 对象集合按字段排序

    java中进行集合排序

    java中按找对象的某个属性进行升序降序的排序

    java中Map集合的排序方法

    1,HashMap底层维护一个数组,我们向HashMap中所放置的对象实际上是存储在该数组当中; 2,当向HashMap中put一对键值时,它会根据key的hashCode值计算出一个位置,该位置就是此对象准备往数组中存放的位置。 ...

    java版本List中对象多属性排序.rar

    java版本List中对象多属性排序.rar

    JAVA像SQL一样对List对象集合进行排序

    主要介绍了JAVA像SQL一样对List对象集合进行排序的实现方法,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下

    JAVA泛型简单排序实例

    JAVA泛型源代码实现以下功能:返回数组元素的最大值/最小值下标;判断数组元素是否按升序排列;T对象数组排序;二分法查找key元素;

    Java实现储存对象并按对象某属性排序的几种方法示例

    主要介绍了Java实现储存对象并按对象某属性排序的几种方法,结合实例形式详细分析了Java储存对象并按对象某属性排序的具体实现方法与操作注意事项,需要的朋友可以参考下

    集合的多级排序

    /*集合的多级排序,列入几个学生对象进行考试,先按总成绩的大小排序, 如果总成绩相同的情况下,按照平时成绩进行排序*/

    java根据List内对象的属性排序方法

    下面小编就为大家分享一篇java根据List内对象的属性排序方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    java集合框架

    集合框架是一个用来代表和操纵集合的统一架构。...算法:是实现集合接口的对象里的方法执行的一些有用的计算,例如:搜索和排序。这些算法被称为多态,那是因为相同的方法可以在相似的接口上有着不同的实现。

    java ArrayList集合中的某个对象属性进行排序的实现代码

    主要介绍了java ArrayList集合中的某个对象属性进行排序的实现代码,需要的朋友可以参考下

    java排序代码

    定制排序:在创建TreeSet集合对象时,并提供一个Comparator接口实现类对象与该TreeSet集合关联, 由Comparator实现类对象负责集合元素的排序逻辑。 // 自定义比较器 class MyTreeSetCompartor implements...

    java 中List按照date排序的实现

    主要介绍了java 中List按照date排序的实现的相关资料,需要的朋友可以参考下

    精通 Hibernate:Java 对象持久化技术详解(第2版).part2

     14.5.1 在数据库中对集合排序  14.5.2 在内存中对集合排序  14.6 映射组件类型集合  14.7 小结  14.8 思考题 第15章 映射实体关联关系  15.1 映射一对一关联  15.1.1 按照外键映射   15.1.2 按照主键映射 ...

    java中set、list和map的使用方法实例

    // java中对象容器主要有Set,List和Map三个接口类。 // 迭代器(Iterator)模式,又叫做游标(Cursor)模式。 // GOF给出的定义为:提供一种方法访问一个容器...另包含一篇网文:在java中使用TreeMap进行中文排序

    JAVA SE 开发手册.CHM

    14、JAVA集合框架之list接口、LinkedList类、ArrayList类、Vector类 15、JAVA集合框架之Set接口、HashSet类、TreeSet类 16、JAVA集合框架之Map接口、HashMap类、Trelap类、Hashtable类 17、JAVA异常Exception 18...

    java各种功能集合和工具.rar

    Collections是操作集合对象的工具类 Objects是操作引用数据类型对象的工具类 Arrays的常用方法 普通排序 Arrays.sort(int[] a) Arrays.sort(int[] a, int fromIndex, int toIndex) 并行排序:JDK1.8新增 Arrays....

Global site tag (gtag.js) - Google Analytics