compareTo在java中的应用
我在读java中的compareTo,我有以下代码:
import java.util.Comparator;
public class Test {
Comparator<String> caseInsensitive= new Comparator<String>() {
@Override
public int compare(String s, String b) {
return s.compareTo(b);
}
};
public static void main(String[] args) {
Test t = new Test();
System.out.println(((Comparator<String>) t).compare("baba","baba"));
}
}
当我运行它时,会收到以下错误消息:
Exception in thread "main" java.lang.ClassCastException: Test cannot be cast to java.util.Comparator
at Test.main(Test.java:15)
如何纠正
# 1 楼答案
您的
Test
类未实现Comparator<String>
,因此无法将其强制转换为此类型。它包含一个实现该接口的成员这将有助于:
或者您可以更改
Test
类以直接实现Comparator<String>
: