Java中实现数组乱序的api_Java中使用Comparator接口实现集合对象或数组对象的排序...

package com.mxl.xiaoming;

import java.util.ArrayList;

import java.util.Collections;

import java.util.Comparator;

import java.util.Iterator;

import java.util.List;

class Week{

private String week;

private int integer;

//无参构造函数

public Week(){

super();

}

public Week(String week,int integer){

super();

this.week = week;

this.integer = integer;

}

public String getWeek(){

return week;

}

public void setWeek(String week){

this.week = week;

}

public int getInteger(){

return integer;

}

public void setInteger(int integer){

this.integer = integer;

}

}

class WeekComparator implements Comparator{

/*

* 对Week类进行排序,按照integer进行排序。

* 升序排列 :如果 w1小于w2,返回一个负数;如果w1大于w2,返回一个正数;如果相等,则返回 0;

* 降序排列 :如果 w1小于w2,返回一个正数;如果w1大于w2,返回一个负数;如果相等,则返回 0;

* @see

*/

@Override  //覆写Comparator接口中的,compare()方法。

public int compare(Week w1,Week w2){

if(w1.getInteger()>w2.getInteger()){

return 1;

}else if(w1.getInteger()

return -1;

}else{

return 0;

}

}

}

public class Exercise{

public static void main(String[] args) throws Exception{

List weeks = new ArrayList();   //创建List集合对象  weeks

weeks.add(new Week("星期二",2));

weeks.add(new Week("星期五",5));

weeks.add(new Week("星期四",4));

weeks.add(new Week("星期一",1));

weeks.add(new Week("星期六",6));

weeks.add(new Week("星期日",7));

weeks.add(new Week("星期三",3));

WeekComparator wc = new WeekComparator();

Collections.sort(weeks,wc);                 //集合weeks按照 对象wc中的方式进行排序。

Iterator itr = weeks.iterator();

while(itr.hasNext()){

Week wk = (Week) itr.next();

System.out.println(wk.getWeek()+"----> "+wk.getInteger());

}

}

}

运行结果:

6d9b00666a59dc2b041195c1a6bb93f5.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值