解决方案 »
- 100分求:通过webview的本地html5播放mp3问题。
- Android加载一百张大图片,列表显示,如何保证不会OOM?
- 为什么模拟器可以收到日期改变广播,手机却收不到?
- 修改APK后签名没办法签
- 添加自己的module到android framework源代码,然后build SDK的问题?
- 初学Android有什么好建议,叽叽叽!
- 怎样使TabWidget处于屏幕底部?
- android实现观察者模式没有效果
- 关于android中对使用自启服务的限制问题
- 关于seekbar的拖动问题
- 请教这两句是什么意思Intent mainIntent = new Intent(Intent.ACTION_MAIN, null); main
- 问一个关于Android Camera的问题,对焦与拍照。
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;public class Demo { public static void main(String[] args) {
ArrayList<ShortCutInfo> mRelaItems = new ArrayList<ShortCutInfo>();
mRelaItems.add(new ShortCutInfo(1));
mRelaItems.add(new ShortCutInfo(12));
mRelaItems.add(new ShortCutInfo(3));
mRelaItems.add(new ShortCutInfo(7));
mRelaItems.add(new ShortCutInfo(2)); MyComparator myComparator = new MyComparator();
Collections.sort(mRelaItems, myComparator);
for(ShortCutInfo c : mRelaItems) {
System.out.println("======" + c.hotseatOrder + "======");
}
}
}class MyComparator implements Comparator<ShortCutInfo> {
@Override
public int compare(ShortCutInfo object1, ShortCutInfo object2) {
if (object1.hotseatOrder < object2.hotseatOrder)
return 1; return 0;
}}输出结果:======12======
======7======
======3======
======2======
======1======
import java.util.ArrayList;
import java.util.Collections;
/**
*测试类
*/
public class Test { public static void main(String[] args){
ArrayList<DataEntity> array = new ArrayList<DataEntity>();
DataEntity d1 = new DataEntity(1, 20.0);
DataEntity d2 = new DataEntity(2, 10.0);
DataEntity d3 = new DataEntity(3, 10.1);
DataEntity d4 = new DataEntity(4, 40);
DataEntity d5 = new DataEntity(5, 3.5);
array.add(d1);
array.add(d2);
array.add(d3);
array.add(d4);
array.add(d5);
SizeComparator cmp = new SizeComparator();
Collections.sort(array, cmp);
for(DataEntity data : array){
System.out.println(data);
}
}
}import java.util.Comparator;/**
*实现Comparator接口类
*/
public class SizeComparator implements Comparator<DataEntity>{ @Override
public int compare(DataEntity arg0, DataEntity arg1) {
if(arg0.getSize() <= arg1.getSize()){
return 1;
}
return 0;
}}/**
*数据实体类
*/
public class DataEntity {
private int id;
private double size;
public DataEntity(int id, double size){
this.id = id;
this.size = size;
} @Override
public String toString() {
return "id = " + id + " size = " + size;
}
public int getId() {
return id;
} public void setId(int id) {
this.id = id;
} public double getSize() {
return size;
} public void setSize(double size) {
this.size = size;
}
}输出的结果根本就没有排序:
id = 1 size = 20.0
id = 2 size = 10.0
id = 3 size = 10.1
id = 4 size = 40.0
id = 5 size = 3.5