java传参排序_java 自定义类传递两个参数要求一个升序、一个降序

本文展示了如何在Java中使用自定义类Apple实现基于重量的升序和降序排序。通过实现Comparable接口和Comparator接口,对Apple对象的权重进行排序。示例代码包括创建Apple类,然后在Test26类中使用Collections.sort()方法进行不同顺序的排序。
摘要由CSDN通过智能技术生成

import java.util.*;

class Apple implements Comparable {

private int id;

private int weight;

public Apple(){

super();

}

public Apple(int id,int weight){

super();

this.id=id;

this.weight=weight;

}

public int getId() {

return id;

}

public void setId(int id) {

this.id = id;

}

public int getWeight() {

return weight;

}

public void setWeight(int weight) {

this.weight = weight;

}

@Override

public String toString(){

return "编号 : " + id + "\t重量 : " + weight;

}

@Override

public int compareTo(Apple app) {

return this.weight - app.weight;

}

}

public class Test26 {

public static void main(String[] args) {

List list = new ArrayList();

list.add(new Apple(5, 200));

list.add(new Apple(1, 150));

list.add(new Apple(3, 249));

System.out.println("排序前");

for(Apple obj : list){

System.out.println(obj.toString());

}

Collections.sort(list, new Comparator(){

@Override

public int compare(Object o1, Object o2) {

return ((Apple)o1).getWeight() - ((Apple)o2).getWeight();

}

});

System.out.println("升序排列后");

for(Apple obj : list){

System.out.println(obj.toString());

}

Collections.sort(list, new Comparator(){

@Override

public int compare(Object o1, Object o2) {

return ((Apple)o2).getWeight() - ((Apple)o1).getWeight();

}

});

System.out.println("降序排列后");

for(Apple obj : list){

System.out.println(obj.toString());

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值