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);
            }
        }
    }
}
Write your comment

Before write your comment, please sign on.

分类