当前位置: 首页 > 面试题库 >

java.lang.NoSuchMethodError:排序arraylist android中没有接口方法sort(Ljava / util / Comparator;)异常

谯乐池
2023-03-14
问题内容

我正在尝试ArrayList在Android应用程序中的Java中排序,但是却遇到了这个奇怪的异常。

码:

eventsList.sort(new Comparator<Event>() {
        @Override
        public int compare(Event event, Event t1) {
            return event.getEventStartDate().compareTo(t1.getEventStartDate());
        }
    });

例外:

java.lang.NoSuchMethodError: No interface method sort(Ljava/util/Comparator;)V in class Ljava/util/List; or its super classes (declaration of 'java.util.List' appears in /system/framework/core-libart.jar)

问题答案:

ArrayList#sort()是在API级别24中添加的,而低于API级别24的运行时没有该方法。看起来您compileSdkVersion已经24
岁了,因此您首先获得了要编译的代码。

使用Collections.sort(list, comparator)代替。



 类似资料: