java实现ArrayList根据存储对象排序功能示例
作者:cjc雪狼 发布时间:2022-01-24 01:06:05
标签:java,ArrayList,排序
本文实例讲述了java实现ArrayList根据存储对象排序功能。分享给大家供大家参考,具体如下:
与c++中的qsort的实现极为相似,构建新的比较对象Comparator即可
package demo;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
class Stu{
public int age;
private String name;
public Stu(String name,int age){
this.age=age;
this.name=name;
}
public String toString(){
String str=name+"is "+age;
return str;
}
}
public class Sort{
@SuppressWarnings({ "unchecked", "rawtypes" })
public static void main(String[] args){
ArrayList<Stu> s=new ArrayList<Stu>();
s.add(new Stu("cjc",25));
s.add(new Stu("jake",17));
s.add(new Stu("john",30));
s.add(new Stu("Alice",23));
System.out.println("脚本之家测试结果:");
System.out.println("The order before sorting!");
System.out.println(s);
//对集合中的元素更具年龄进行排序
Collections.sort(s,new Comparator(){
@Override
public int compare(Object o1, Object o2) {
// TODO Auto-generated method stub
Stu stu1=(Stu)o1;
Stu stu2=(Stu)o2;
return stu2.age-stu1.age;
}
});
System.out.println("The order after sorting!");
System.out.println(s);
}
}
运行结果:
PS:这里再为大家推荐一款关于排序的演示工具供大家参考:
在线动画演示插入/选择/冒泡/归并/希尔/快速排序算法过程工具:
http://tools.jb51.net/aideddesign/paixu_ys
希望本文所述对大家java程序设计有所帮助。
来源:http://blog.csdn.net/cjc211322/article/details/41805079


猜你喜欢
- 今天用NewtonSoft.JSon解析一个天气数据,数据格式如:{"status":1,"detail&qu
- 1. 问题描述springboot的面世,成为Java开发者的一大福音,大大提升了开发的效率,其实springboot只是在maven的基础
- 引言在实际的Android项目开发中,图片是必不可少的元素,几乎所有的界面都是由图片构成的;像列表页、查看大图页等,都是需要展示图片,而且这
- 可以使用 Intent.createChooser() 的方法来创建 Intent,并传入想要的 Sting 作为标题。 以wallpape
- 本文实例讲述了Java实现的简单网页截屏功能。分享给大家供大家参考,具体如下:package awtDemo;import java.awt
- 1.pom.xml文件引入druid和数据库连接jar包<properties><druid.version>1.0
- 前言:sleep 方法和 wait 方法都是用来将线程进入休眠状态的,并且 sleep 和 wait 方法都可以响应 interrupt 中
- 昨天实现一个功能,根据文章的id或者别名查找文章。起初采用mybatis的Example进行查询,对参数artName进行判断,如果是纯数字
- 本文实例主要实现了网页照相机程序的功能。C#实现将网页保存成图片格式,简单实现网页拍照,主要是基于ActiveX 组件的网页快照类,Acit
- 这种属性应用方式是field_name=@field_value@。两个@符号是springboot为替代${}属性占位符产生,原因是${}
- 环境搭建项目结构图:1.我们首先做好服务端pom.xml<dependencies>
- 经典分布式事务,是相对互联网中的柔性分布式事务而言,其特性为ACID原则,包括原子性(Atomictiy)、一致性(Consistency)
- 本文实例讲述了Android实现打开各种文件的intent方法。分享给大家供大家参考,具体如下:import android.app.Act
- Spring boot项目结合docker容器用,打了个jar包,启动的时候竟然说:no main manifest attribute,
- 代码如下一、创建EdgeLight.xaml代码如下。<ResourceDictionary xmlns="htt
- 前言最近想体验下最新版本的SpringBoot,逛了下官网,发现SpringBoot目前最新版本已经是2.6.4了,版本更新确实够快的。之前
- C语言实现四窗口聊天,供大家参考,具体内容如下为了练习前段时间学习的共享内存、管道、消息队列等进程同步机制,做了一个聊天小项目。项目描述:有
- 前言日常编码过程中,最重要的技能不是说你学会使用很多最新的编程技术或者做出一个高大上的系统。而是你在写代码过程中,对异常的处理,是否系统可以
- 该说不唠,直接上代码。可直接复制使用package com.yuezhi.util;import java.math.BigDecimal;
- 使用工具:Android studio 3.0使用方法:一:在build.gradle(Module:app)中添加依赖implementa