簡體   English   中英

為什么compareTo()不起作用?

[英]Why Doesn't compareTo() work?

我有兩個ArrayLists:

ArrayList<String> testList = new ArrayList<>();
ArrayList<String> wordList = new ArrayList<>();

它們被傳遞給方法:

public static void binSearch(ArrayList a1, ArrayList a2)

在方法內部,我想比較兩個ArrayList之間的字符串:

a1.get(i).compareTo(a2.get(newEnd / 2))

但是,我收到一條錯誤消息:

cannot find symbol
symbol: method compareTo(Object)
location: class Object

我聽說有人說我需要實現/擴展Comparable,但是似乎有些人在不導入/實現/擴展任何東西的情況下使用該方法就很好。

不要使用原始類型。 聲明您的binSearch方法是:

public static void binSearch(ArrayList<String> a1, ArrayList<String> a2)

或者,如果您想支持任何Comparable類型,請引入泛型類型變量:

public static <T extends Comparable<? super T>> void binSearch(List<T> a1, List<T> a2)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM