当前位置: 首页 > news >正文

ListBean 排序

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

List<Bean> 简单排序如下:

1.创建Bean

package com.nzh.Demo.entity;



/**
 * @comment:学生实体类
 * @author 傅里叶级数
 * @date 2018年
 */
public class StudentsBean {

	/**
	 * 身高
	 */
	private float height;
	/**
	 * 年龄
	 */
	private int age;
	/**
	 * 血型
	 */
	private String bloodType;
	/**
	 * 姓名
	 */
	private String name;
	/**
	 * 性别
	 */
	private String sex;
	public float getHeight() {
		return height;
	}
	public void setHeight(float height) {
		this.height = height;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getBloodType() {
		return bloodType;
	}
	public void setBloodType(String bloodType) {
		this.bloodType = bloodType;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getSex() {
		return sex;
	}
	public void setSex(String sex) {
		this.sex = sex;
	}
}

2.写排序的Demo

package com.nzh.Demo;

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

import com.nzh.Demo.entity.StudentsBean;

public class StudentDemo {

	public static void main(String[] args) {
		/**
		 * 声明学生实体
		 */
		StudentsBean student1 = new StudentsBean();
		StudentsBean student2 = new StudentsBean();
		StudentsBean student3 = new StudentsBean();
		StudentsBean student4 = new StudentsBean();
		
		/**
		 * 赋值
		 */
		student1.setName("张三");
		student1.setSex("男");
		student1.setAge(12);
		student1.setBloodType("B");
		student1.setHeight(180);
		
		
		student2.setName("李四");
		student2.setSex("男");
		student2.setAge(34);
		student2.setBloodType("O");
		student2.setHeight(183);
		
		
		student3.setName("王五");
		student3.setSex("女");
		student3.setAge(32);
		student3.setBloodType("A");
		student3.setHeight(179);
		
		
		student4.setName("赵六");
		student4.setSex("女");
		student4.setAge(24);
		student4.setBloodType("AB");
		student4.setHeight(175);
		
		List<StudentsBean> listStd = new ArrayList<>();
		listStd.add(student1);
		listStd.add(student2);
		listStd.add(student3);
		listStd.add(student4);


		listBeanSort(listStd);
		printlnStuData(listStd);
	}

	
	
	
	
	
	
	
	/**
	 * 打印学生数据
	 */
	public static void printlnStuData(List<StudentsBean> listStd){
		System.out.println("学生数据如下:");
		for (StudentsBean stu : listStd) {
			System.out.println("姓名:"+stu.getName()+"    性别:"+stu.getSex()+"    年龄:"+stu.getAge()+"    血型:"+stu.getBloodType()+"    身高:"+stu.getHeight());
		}
	}
	
	
	
	/**
	 * @comment:ListBean 排序
	 * @author:傅里叶级数
	 * @date:2018年
	 * @param listStd
	 */
	public static void listBeanSort(List<StudentsBean> listStd){
		Collections.sort(listStd,new Comparator<StudentsBean>() {
			@Override
			public int compare(StudentsBean o1, StudentsBean o2) {
//				// 按照年龄升序排列
//				return o1.getAge()-o2.getAge();
//				// 按照年龄降序排列
//				return o1.getAge()-o2.getAge();
				// 按照身高排序,需要将float类型转换为int类型再排序,如果为String类型的数字,也需要将String类型的数字转换为int类型
				int high1 = (int)o1.getHeight(); 
				int high2 = (int)o2.getHeight(); 
				return high1-high2;
			}
		});
	}
}

 

转载于:https://my.oschina.net/FourierSeriesNzh/blog/1927431

相关文章:

  • HYPER-V的安装和双机调试的配置(一)
  • java核心技术读书笔记
  • Android 9.0新特性
  • JS中逻辑运算符中 == 的问题
  • Apache2.2.x版本不支持PFS,无法通过ATS的问题
  • 惰性计算辨析
  • 洛谷P4016 负载平衡问题(费用流)
  • JavaWeb-JSPELJSTL
  • list、dict、str虽然是Iterable,却不是Iterator
  • jQuery(一)
  • C# 中类和结构的区别
  • vue-cli 3.0 初体验
  • 谷歌 Fuchsia 上手体验,将取代Android/win10
  • dokcer安装gitlab
  • mysql启动失败
  • 【Leetcode】101. 对称二叉树
  • 「前端」从UglifyJSPlugin强制开启css压缩探究webpack插件运行机制
  • 【跃迁之路】【444天】程序员高效学习方法论探索系列(实验阶段201-2018.04.25)...
  • Java比较器对数组,集合排序
  • markdown编辑器简评
  • python学习笔记-类对象的信息
  • redis学习笔记(三):列表、集合、有序集合
  • SAP云平台里Global Account和Sub Account的关系
  • Spring核心 Bean的高级装配
  • VUE es6技巧写法(持续更新中~~~)
  • 高性能JavaScript阅读简记(三)
  • 经典排序算法及其 Java 实现
  • 两列自适应布局方案整理
  • 前端面试总结(at, md)
  • 设计模式走一遍---观察者模式
  • 适配iPhoneX、iPhoneXs、iPhoneXs Max、iPhoneXr 屏幕尺寸及安全区域
  • 数据可视化之 Sankey 桑基图的实现
  • 在electron中实现跨域请求,无需更改服务器端设置
  • 7行Python代码的人脸识别
  • SAP CRM里Lead通过工作流自动创建Opportunity的原理讲解 ...
  • 通过调用文摘列表API获取文摘
  • ​configparser --- 配置文件解析器​
  • #include
  • (4.10~4.16)
  • (8)STL算法之替换
  • (安全基本功)磁盘MBR,分区表,活动分区,引导扇区。。。详解与区别
  • (附源码)springboot人体健康检测微信小程序 毕业设计 012142
  • (附源码)计算机毕业设计大学生兼职系统
  • (四)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (算法)Game
  • (一)pytest自动化测试框架之生成测试报告(mac系统)
  • (轉貼) 資訊相關科系畢業的學生,未來會是什麼樣子?(Misc)
  • ******IT公司面试题汇总+优秀技术博客汇总
  • .apk 成为历史!
  • .NET LINQ 通常分 Syntax Query 和Syntax Method
  • .net程序集学习心得
  • .Net组件程序设计之线程、并发管理(一)
  • .py文件应该怎样打开?
  • @hook扩展分析
  • @JsonSerialize注解的使用