我有一個有兩個字段Name和Year的數組列表。我想用條件輸入名稱對這個數組進行排序(按名稱輸入排序)。如果名稱相同,則按年份排序。使用ArrayList輸入條件輸入Android
Example
Name Year
Ann 2000
Bech 2001
Bach 2013
Bach 2012
Chu 1999
假設我創建的函數是sort,輸入是Bach。其結果將顯示
Name Year
Bach 2013
Bach 2012
Ann 2000
Bech 2001
Chu 1999
因爲與輸入巴赫和第一我要與「巴赫」顯示所有名稱如果相同的名稱,我將在今年對其進行排序(最大 - 最小)。如果不相同的「Bach」名稱,我將按A-Z使用compareTo() 這是我的代碼,但我沒有輸入條件名稱。請新功能幫助我一樣sort_inputname(字符串inputname)
//Class compare Name- Year
public class Search_Name_Year_Comparator implements Comparator<SearchListInformation>
{
public int compare(SearchListInformation left,
SearchListInformation right) {
// TODO Auto-generated method stub
int dateComparison;
int dataComparison = 0;
if(left.getName().compareTo(right.getName())==0)
{
if(left.getYear().compareTo(right.getYear())>0)
{
return -1;
}
else if(left.getYear().compareTo(right.getYear())<0)
{
return 1;
}
else
return 0;
}
else
return left.getName().compareTo(right.getName());
有什麼問題嗎? – Shark