java 对list中对象按属性排序
实体对象类 --略
排序类----实现Comparator接口,重写compare方法
package com.tang.list;
import java.util.Comparator;
public class Mycompera implements Comparator<Student> {
@Override
public int compare(Student o1, Student o2) {
if (o1.getSid() > o2.getSid()) {
return -1;
}
return 1;
}
}
测试类--------------------------
package com.tang.list;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class ListSortTang {
// 按照list 中对象的属性排序
public static void main(String[] args) {
Student st1 = new Student(1, "a", "男", 12);
Student st2 = new Student(2, "b", "女", 11);
Student st3 = new Student(3, "c", "男", 20);
Student st4 = new Student(4, "d", "女", 15);
Student st5 = new Student(5, "e", "男", 32);
Student st6 = new Student(6, "f", "女", 21);
Student st7 = new Student(7, "g", "男", 12);
Student st8 = new Student(8, "h", "女", 10);
Student st9 = new Student(9, "i", "男", 9);
Student st10 = new Student(10, "j", "女", 19);
List<Student> stus = new ArrayList<Student>();
stus.add(st1);
stus.add(st2);
stus.add(st3);
stus.add(st4);
stus.add(st8);
stus.add(st5);
stus.add(st6);
stus.add(st7);
stus.add(st9);
stus.add(st10);
for (Student s : stus) {
System.out.println(s.toString());
}
System.out.println("排序后.................");
Collections.sort(stus, new Mycompera());// 排序
for (Student s : stus) {
System.out.println(s.toString());
}
}
}
输出-------------------
Student [sid=1, name=a, sex=男, age=12]
Student [sid=2, name=b, sex=女, age=11]
Student [sid=3, name=c, sex=男, age=20]
Student [sid=4, name=d, sex=女, age=15]
Student [sid=8, name=h, sex=女, age=10]
Student [sid=5, name=e, sex=男, age=32]
Student [sid=6, name=f, sex=女, age=21]
Student [sid=7, name=g, sex=男, age=12]
Student [sid=9, name=i, sex=男, age=9]
Student [sid=10, name=j, sex=女, age=19]
排序后.................
Student [sid=10, name=j, sex=女, age=19]
Student [sid=9, name=i, sex=男, age=9]
Student [sid=8, name=h, sex=女, age=10]
Student [sid=7, name=g, sex=男, age=12]
Student [sid=6, name=f, sex=女, age=21]
Student [sid=5, name=e, sex=男, age=32]
Student [sid=4, name=d, sex=女, age=15]
Student [sid=3, name=c, sex=男, age=20]
Student [sid=2, name=b, sex=女, age=11]
Student [sid=1, name=a, sex=男, age=12]
java 对list中对象按属性排序的更多相关文章
- JS中对象按属性排序(冒泡排序)
在实际工作经常会出现这样一个问题:后台返回一个数组中有i个json数据,需要我们根据json中某一项进行数组的排序. 例如返回的数据结构大概是这样: { result:[ {id:,name:'中国银 ...
- array排序(按数组中对象的属性进行排序)
使用array.sort()对数组中对象的属性进行排序 <template> <div> <a @click="sortArray()">降序& ...
- freemarker获取封装类中对象的属性
freemarker获取封装类中对象的属性 1.设计思路 (1)封装学生类 (2)创建数据模型 (3)新建student.ftl (4)运行Junit测试文件,生成HTML文件 2.封装学生类 Stu ...
- freemarker获取封装类中对象的属性(六)
freemarker获取封装类中对象的属性 1.设计思路 (1)封装学生类 (2)创建数据模型 (3)新建student.ftl (4)运行Junit测试文件,生成HTML文件 2.封装学生类 Stu ...
- C#对象内部属性排序测试
构建对象: class SortGrid { int indexI; int indexJ; public SortGrid(int x, int y) { indexI = x; indexJ = ...
- Vue 改变数组中对象的属性不重新渲染View的解决方案
Vue 改变数组中对象的属性不重新渲染View的解决方案 在解决问题之前,我们先来了解下 vue响应性原理: Vue最显著的一个功能是响应系统-- 模型只是一个普通对象,修改对象则会更新视图.受到ja ...
- 【转】vector中对象指针的排序
原文:http://blog.csdn.net/tanlijun37/article/details/1948493 vector中对象指针的排序,初步想法是1: 把对象指针存到vector,重载bo ...
- JavaScript中对象的属性
在JavaScript中,属性决定了一个对象的状态,本文详细的研究了它们是如何工作的. 属性类型 JavaScript中有三种不同类型的属性:命名数据属性(named data properties) ...
- JS 取Json数据中对象特定属性值
解析JSON JSON 数据 var str = '[{"a": "1","b": "2"}, {"a&quo ...
随机推荐
- MLlib-分类与回归
MLlib支持二分类,多酚类和回归分析的多种方法,具体如下: 问题类别 支持方法 二分类 线性支持向量机, 逻辑回归,决策树,朴素贝叶斯 多分类 决策树,朴素贝叶斯 回归 线性最小二乘,Lasso,r ...
- arm的一些概念(ARM7、Cortex-M的区别)
ARM7:ARMv4架构,ARM9:ARMv5架构,ARM11:ARMv6架构,ARM-Cortex 系列:ARMv7架构. ARM7没有MMU(内存管理单元),只能叫做MCU(微控制器),不能 ...
- Renting Boats
Description 长江游艇俱乐部在长江上设置了n 个游艇出租站1,2,…,n.游客可在这些游艇出租站租用游艇,并在下游的任何一个游艇出租站归还游艇.游艇出租站i 到游艇出租站j 之间的租金为r( ...
- Azure IoT
微软Azure IoT 国外物联网平台初探(二)——微软Azure IoT 马智 平台定位 连接设备.其它 M2M 资产和人员,以便在业务和操作中更好地利用数据. 连接 IoT 设备 将所有设备连 ...
- Javascript图片轮播
原文链接:http://www.imooc.com/article/7393 编辑HTML代码: <div id="wrap"><!--图片展示区--> & ...
- Black Box
http://poj.org/problem?id=1442 #include<cstdio> #include<algorithm> #include<queue> ...
- jquery.metadata.js使用分析
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- COJ 0578 4019二分图判定
4019二分图判定 难度级别: B: 编程语言:不限:运行时间限制:1000ms: 运行空间限制:51200KB: 代码长度限制:2000000B 试题描述 给定一个具有n个顶点(顶点编号为0,1,… ...
- HelloSilverlight
一:输入姓名并选中一个日期,将在下面显示 二:XAML代码 <UserControl x:Class="HelloSilverlight.MainPage" xmlns=&q ...
- HttpContext之公交车
小编刚在路边晃攸了许久,好不容易才等到个公交车,想想真是不容易呀,这年代路边打的也打不到,坐个公交车也难等呀. 顺势一想,HttpContext不也是一输运行在web上的一辆公交车吗?公交车让我们成为 ...