無法弄清楚如何從擴展分類排序的ArrayList ...無法擴展類和排序的ArrayList
繼承人我有:
AddressBook類:
import java.util.ArrayList;
import java.util.Iterator;
public class AddressBook
{
private ArrayList<Entry> data;
public AddressBook()
{
this.data = new ArrayList();
}
public String add(Entry paramEntry)
{
//Some code }
public ArrayList<Entry> getAddressBook()
{
return this.data;
}
public String getAll()
{
//Some code
}
}
ExtendedAddressBook類別:
import java.util.*;
import java.lang.Comparable;
public class ExtendedAddressBook extends AddressBook
{
public ExtendedAddressBook()
{
}
public String getAll()
{
String listAll = "Address Book\n";
ArrayList<Entry> allEntries = getAddressBook();
Collections.sort(allEntries);
for (Entry entry : allEntries)
{
ListAll = ListAll + entry.toString();
}
return ListAll;
}
}
AllEntries類:
import java.lang.Comparable;
public class AllEntries extends Entry implements Comparable<Entry>
{
public int compareTo(Entry otherEntry)
{
int d = this.getFirstName().compareTo(otherEntry.getFirstName());
if (d == 0)
{
d = this.getLastName().compareTo(otherEntry.getLastName());
}
return d;
}
}
當我嘗試編譯時,我得到'沒有合適的方法發現sort(java.util.ArrayList)在以下行Collection.sort(allEntries);在ExtendedAddressBook類中。有人可以指出我錯誤的地方,如果它甚至可能擴展一個類,以便arrayList可以被排序?由於
如果您將包含[SSCCE](http://www.sscce.org/),並且您的問題更清晰,更有針對性地描述,則此問題將更容易回答 – 2013-04-25 15:15:04
這是功課嗎?如果是這樣,請舉報。看看你正在排序的是什麼類型。 – km1 2013-04-25 15:17:55
@SamIam如果你看到我的原始代碼,你會看到這個程序包含的方法的一半以上被省略。包括所有需要的方法,因爲我犯了一些愚蠢的錯誤,我不能看到 – ToniHopkins 2013-04-25 15:18:25