集合中保存对象,如何按对象中的属性排序?

package testProject;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;

public class TestPro {

	public static void main(String[] args) {

		ArrayList<TestPro> zsList = new ArrayList<TestPro>();

		zsList.add(new TestPro("1", "0000"));
		zsList.add(new TestPro("Y", "1111"));
		zsList.add(new TestPro("Y", "1111444"));
		zsList.add(new TestPro("我是一个热好人", "2222"));
		zsList.add(new TestPro("S", "3333"));
		zsList.add(new TestPro("A", "4444"));
		zsList.add(new TestPro("I", "5555"));
		zsList.add(new TestPro("V", "6666"));
		zsList.add(new TestPro("Q", "7777"));
		zsList.add(new TestPro("I", "8888"));

		Collections.sort(zsList, new Comparator<TestPro>() {

			@Override
			public int compare(TestPro o1, TestPro o2) {
				// TODO Auto-generated method stub
				return o1.getAbbreviation().compareTo(o2.getAbbreviation());
			}

		});

		for (int i = 0; i < zsList.size(); i++) {
			System.out.println(zsList.get(i).getAbbreviation() + "==="
					+ zsList.get(i).getName());
		}

	}

	private String abbreviation;
	private String name;

	public TestPro() {
		super();
	}

	public TestPro(String abbreviation, String name) {
		super();
		this.abbreviation = abbreviation;
		this.name = name;
	}

	public String getAbbreviation() {
		return abbreviation;
	}

	public void setAbbreviation(String abbreviation) {
		this.abbreviation = abbreviation;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

}

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

时间: 2024-10-05 06:13:44

集合中保存对象,如何按对象中的属性排序?的相关文章

以下是关于ASP.NET中保存各种信息的对象的比较,理解这些对象的原理,对制作完善的程序来说是相当有必要的(摘至互联网,并非原创--xukunping)

在ASP.NET中,有很多种保存信息的对象.例如:APPlication,Session,Cookie,ViewState和Cache等,那么它们有什么区别呢?每一种对象应用的环境是什么?    为了更清楚的了解,我们总结出每一种对象应用的具体环境,如下表所示: 方法 信息量大小 保存时间 应用范围 保存位置 Application 任意大小 整个应用程序的生命期 所有用户 服务器端 Session 小量,简单的数据 用户活动时间+一段延迟时间(一般为20分钟) 单个用户 服务器端 Cookie

hibernate中对象集合的保存

一.在java web设计中经常使用对象进行操作,在hibernate中对象集合的保存(一对多) 1需要进行如下步骤: 1) 设计数据表关系 2)引入jar包,需要注意引入数据库connector 3)写实体类 4)配置映射文件和hibernate.cfg.xml 2例子如下: 员工和部门的关系,多个员工属于一个部门,一个部门有多个员工.可以在员工表上设置一个外键解决一对多的关系. 2.1)创建表 CREATE TABLE employee( id INT PRIMARY KEY AUTO_IN

如何把Excel中的单元格等对象保存成图片

对于Excel中的很多对象,比如单元格(Cell),图形(shape),图表(chart)等等,有时需要将它们保存成一张图片.就像截图一样. 最近做一个Excel相关的项目,项目中遇到一个很变态的需求, 需要对Excel中的一些对象进行拍图,比如,对一个单元格设置一些颜色之后拍图,或者对一个图表,报表拍成图片.经过比较曲折的经历,终于还是完成了.拿出来分享一下. 要做Excel,首先当然是查看Excel的com对象模型.地址在这里: http://msdn.microsoft.com/en-us

jsWindow 对象 Window 对象 Window 对象表示浏览器中打开的窗口。 如果文档包含框架(frame 或 iframe 标签),浏览器会为 HTML 文档创建一个 window 对象,并为每个框架创建一个额外的 window 对象。 注释:没有应用于 window 对象的公开标准,不过所有浏览器都支持该对象。 Window 对象集合 集合 描述 frames[] 返回窗口中所有命

一.JSX简介 JSX就是Javascript和XML结合的一种格式.React发明了JSX,利用HTML语法来创建虚拟DOM.当遇到<,JSX就当HTML解析,遇到{就当JavaScript解析. 如下(JS写法) var child1 = React.createElement('li', null, 'First Text Content'); var child2 = React.createElement('li', null, 'Second Text Content'); var

JavaSE中Collection集合框架学习笔记(3)——遍历对象的Iterator和收集对象后的排序

前言:暑期应该开始了,因为小区对面的小学这两天早上都没有像以往那样一到七八点钟就人声喧闹.车水马龙. 前两篇文章介绍了Collection框架的主要接口和常用类,例如List.Set.Queue,和ArrayList.HashSet.LinkedList等等.根据核心框架图,相信我们都已经对Collection这个JavaSE中最常用API之一有一个较为全面的认识. 这个学习过程,还可以推及到其他常用开源框架和公司项目的学习和熟悉上面.借助开发工具或说明文档,先是对项目整体有一个宏观的认识,再根

AnyPref,可直接在SharedPreferences中保存对象实例的SharedPreferences工具类

有时候在写代码的时候经常会有一些要持久保存某个对象的需求,这时候如果动用Sqlite又觉得太重,使用SharedPreferences保存的话确实是轻量级了,但是还要针对对象的每个字段都要保存,可能要好多行代码,读取出来又是好多行代码,我们为什么不直接自动保存与读取对象中的字段呢,如果有保存几个不同对象的需求的话,那就能省下大量的代码了. AnyPref是一个SharedPreferences工具类,它可以直接保存某个对象到SharedPreferences中,使用方法: 在工程根目录build

session的官方定义是:Session:在计算机中,尤其是在网络应用中,称为“会话控制”。Session 对象存储特定用户会话所需的属性及配置信息。 说白了session就是一种可以维持服务器端的数据存储技术。session主要有以下的这些特点: 1. session保存的位置是在服务器端 2. session一般来说是要配合cookie使用,如果是浏览器禁用了cookie功

session的官方定义是:Session:在计算机中,尤其是在网络应用中,称为"会话控制".Session 对象存储特定用户会话所需的属性及配置信息. 说白了session就是一种可以维持服务器端的数据存储技术.session主要有以下的这些特点: 1. session保存的位置是在服务器端 2. session一般来说是要配合cookie使用,如果是浏览器禁用了cookie功能,也就只能够使用URL重写来实现session存储的功能 3. 单纯的使用session来维持用户状态的话

在MySQL中保存Java对象

需要在MySQL中保存Java对象. 说明: 对象必须实现序列化 MySQL中对应字段设置为blob 将Java对象序列化为byte[] public static byte[] obj2byte(Object obj) throws Exception { byte[] ret = null; ByteArrayOutputStream baos = new ByteArrayOutputStream(); ObjectOutputStream out = new ObjectOutputSt

OC中保存自定义类型对象的持久化方法

OC中如果要将自定义类型的对象保存到文件中,必须进行以下三个条件: 想要把存放自定义类型的数组进行 持久化(就是将内存中的临时数据以文件<数据库等>的形式写到磁盘上)必须满足: 1. 自定义对象必须要序列化(将数据有序的存放) 2. 需要使用归档来进行持久化 3. 如果要加载持久化文件需要进行反序列化(就是将有序存放的数据读取并变成自定义对象) 第一要将自定义类型序列化以及第三步并将文件反序列化必须实现OC中的  <NSCoding>协议. 以Student类为例 @interfa

根据List集合中的对象属性排序

首先创建一个Student对象,里面有三个属性,分别是int类型,String类型,Date类型 package com.sinoway.cisp.test; import java.text.SimpleDateFormat; import java.util.Date; public class Student { private int age; private String name; private Date birthday; public int getAge() { return