2009
8
3
J2ME陷阱一例
用WTK 2.5开发MIDP应用时,自己写了个冒泡排序,模拟器运行正常,真机上报NoClassDefFoundError,原来是没有java.lang.Comparable这个接口,但是WTK编译居然通过了!校验器也没验出任何问题。
解决办法:
自定义一个IsComparable接口,将要排序的类实现此接口:
public static void sort(Vector v) {
int size = v.size();
for (int i=0; i<size; i++) {
for (int j=i+1; j<size; j++) {
IsComparable o1 = (IsComparable) v.elementAt(i);
Object o2 = v.elementAt(j);
if (o1.compareTo(o2) > 0) {
// swap:
v.setElementAt(o1, j);
v.setElementAt(o2, i);
}
}
}
}
