欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

对arraylist中元素进行排序实例代码

程序员文章站 2024-04-02 09:03:46
rraylist中的元素进行排序,主要考查的是对util包中的comparator接口和collections类的使用。 实现comparator接口必须实现comp...

rraylist中的元素进行排序,主要考查的是对util包中的comparator接口和collections类的使用。

实现comparator接口必须实现compare方法,自己可以去看api帮助文档。

创建一个comparator实例后,用collections.sort(list,<e>)对list中的元素进行排序。

下面是实现代码:

以下文件必须引入util包:

package com.test;
import java.util.*;
emp.java文件如下:
class emp{
	private string empno ;
	private string empname ;
	private float sal ;
	public string getempno() {
		return empno;
	}
	public void setempno(string empno) {
		this.empno = empno;
	}
	public string getempname() {
		return empname;
	}
	public void setempname(string empname) {
		this.empname = empname;
	}
	public float getsal() {
		return sal;
	}
	public void setsal(float sal) {
		this.sal = sal;
	}
	public emp(string empno,string empname,float sal){
		this.empno = empno ;
		this.empname = empname ;
		this.sal = sal ;
	}
}

自己实现的comparator接口

class mycomparator implements comparator{
	public int compare(object o1,object o2) {
		emp e1=(emp)o1;
		emp e2=(emp)o2;
		if(e1.getsal()<e2.getsal()) 
		return 1; else 
		return 0;
	}
}

主类test

public class test {
	/** 
* @param args 
*/
	public static void main(string[] args) {
		// todo auto-generated method stub 
		arraylist al = new arraylist() ;
		emp emp1 = new emp("sn001","ysj1",2500) ;
		emp emp2 = new emp("sn002","ysj2",1200) ;
		emp emp3 = new emp("sn003","ysj3",8900) ;
		emp emp4 = new emp("sn004","ysj4",3400) ;
		emp emp5 = new emp("sn005","ysj5",4500) ;
		al.add(emp1) ;
		al.add(emp2) ;
		al.add(emp3) ;
		al.add(emp4) ;
		al.add(emp5) ;
		system.out.println("排序前的值");
		for (int i=0;i<al.size();i++){
			emp emp = (emp)al.get(i) ;
			system.out.println(emp.getsal());
		}
		//必须是comparator中的compare方法和collections.sort方法配合使用才管用 
		mycomparator mc = new mycomparator() ;
		collections.sort(al, mc) ;
		system.out.println("排序后的值");
		for (int i=0;i<al.size();i++){
			emp emp = (emp)al.get(i) ;
			system.out.println(emp.getsal());
		}
	}
}

总结

以上就是本文关于对arraylist中元素进行排序实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:arraylist的自动扩充机制实例解析arraylist在for循环中使用remove方法移除元素方法介绍等,如有不足之处,欢迎提出您的宝贵意见,小编会及时回复大家的。感谢朋友们对本站的支持!