ArrayList集合或List集合的排序以及activity间集合传值

安卓系统自带方法属性:
Collections.sort(A, B);

解释:A代表的是你要排序的集合
B代表你要排序的方式

一个简单方法的应用:

ArrayList<Model> AL= new ArrayList<Model>(); 

//创建A
for (int i = 0; i < 10.length; i++) {
            Model model = new Model();  
            model.setName(name);
            model.setPosition(position);
            model.setPhone(phone);
            model.setX(x);
            model.setY(y);
            model.setDistance((int)distance);
            AL.add(model); 
        }


Collections.sort(AL, new order()); //对A进行B中排序,这里的AL就是A  new order()就表示的B
//这就是B
public class order implements Comparator<Model> {  

    @Override  
    public int compare(Model lhs, Model rhs) {  
        return (int)(lhs.getDistance()-rhs.getDistance());  //负数在左,正数在右.(lhs.getDistance()是Model类的一个属性值);
    }  

}
//Model类
public class Model implements Serializable{//这里的一个应用,实现Serializable接口,和排序没有关系,只是为了方便activity之间的传值的时候使用.Model实现了这个接口,那么Intent.putExtras("AL",AL);就可以直接传递了.

    private String name;  
    private String position;
    private String phone;  
    private Double x;  
    private Double y;
    private int distance;

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPosition() {
        return position;
    }
    public void setPosition(String position) {
        this.position = position;
    }
    public String getPhone() {
        return phone;
    }
    public void setPhone(String phone) {
        this.phone = phone;
    }
    public Double getX() {
        return x;
    }
    public void setX(Double x) {
        this.x = x;
    }
    public Double getY() {
        return y;
    }
    public void setY(Double y) {
        this.y = y;
    }
    public int getDistance() {
        return distance;
    }
    public void setDistance(int distance) {
        this.distance = distance;
    }




}

基本的一个从小到大的一个排序就这么简单,我是安卓新人,谢谢支持.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值