当前位置: 移动技术网 > IT编程>开发语言>Java > 对arraylist中元素进行排序实例代码

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

2019年07月19日  | 移动技术网IT编程  | 我要评论

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方法移除元素方法介绍等,如有不足之处,欢迎提出您的宝贵意见,小编会及时回复大家的。感谢朋友们对本站的支持!

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网