【发布时间】:2014-04-13 16:14:47
【问题描述】:
我这样创建了一个简单的字符串数组列表:
ArrayList<String> filmDirectory = new ArrayList<String>();
filmDirectory.add("Gone with the Wind");
filmDirectory.add("The Sound of Music");
filmDirectory.add("The Titanic");
Collections.sort(filmDirectory);
编译器提示我将 filmDirectory 设置为一个列表,我这样做了,但我不明白为什么要这样做,因为 ArrayList 是 List 的扩展。
不过,当代码到达:
Collections.sort((List)filmDirectory);
我有一个编译器错误: java.lang.ClassCastException:java.util.ArrayList 无法转换为 acmx.export.java.util.List
实现 Comparator 并为当前类定义 compare 方法并使用 Collections.sort(filmDirectory, this) 也无济于事。
【问题讨论】:
-
确保您的收藏导入来自
java.util.*。 (至少List显然不是)。 -
您导入了错误的 List 类。我猜你的 java 类路径不正确。
-
谢谢!这解决了问题。导入整个 java.util.*,而不是其中的一部分。
标签: java sorting collections