2012-06-05 3 views
1

Mutliple Arraylist <> с 10 записями. я использовал это для ограничения до 10 результатов, но как получить следующие 10 результатов и так далее.Несколько ArrayList с 10 записями с использованием итератора и ArrayList

try { 
ArrayList<CalanderQueryOutput> results = new ArrayList<CalanderQueryOutput>(); 

List<?> eventsToday = (List<?>) filter.filter(calendar.getComponents(Component.VEVENT)); 
CalanderQueryOutput caldavOutput = new CalanderQueryOutput(); 

for (Iterator<?> i = eventsToday.iterator(); i.hasNext();) { 
if(Limit < RsLimit){ 
    results.add(caldavOutput); 
    Limit++; 
    } 
     } 

} 
+0

Извините, не ясно, вы имеете в виду, что вы хотите, чтобы несколько аррайалистов по 10 записей в каждом? – coder

+0

да, я хочу 10 записей каждый в arraylist –

+0

Можете ли вы быть более конкретным в своем вопросе. –

ответ

3

Прежде всего, вам нужны другие Страницы данного раздела данных для хранения нескольких ArrayLists, вы можете использовать список список как

List<List<CalanderQueryOutput>> resultList = new ArrayList<List<CalanderQueryOutput>>(); 
List<CalanderQueryOutput> results = new ArrayList<CalanderQueryOutput>(); 
for (Iterator<?> i = eventsToday.iterator(); i.hasNext();) { 
if(Limit < RsLimit){ 
    results.add(caldavOutput); 
    Limit++; 
    }else{ 
    resultList.add(results); 
    Limit = 0; 
    results = new ArrayList<CalanderQueryOutput>(); 
} 
     } 

}

0

Я изменил мой код, который работает для ArrayList с итератор

int inc = 0; 
int IOF = Integer.parseInt(ItemOffset); 
inc = IOF; 
int IC = Integer.parseInt(ItemCount); 
int TotalLimit = 0; 
int EventLimit = 0; 
for (int l = 0; l < IC; ++l) { 
++IOF; 
EventLimit = IOF; 
} 

try { 
ArrayList<CalanderQueryOutput> results = new ArrayList<CalanderQueryOutput>(); 
List<?> eventsToday = (List<?>)filter.filter(calendar.getComponents(Component.VEVENT)); 
CalanderQueryOutput caldavOutput = new CalanderQueryOutput(); 

for (Iterator<?> i = eventsToday.iterator(); i.hasNext();) { 
    if (TotalLimit < eventsToday.size()) { 
    if (TotalLimit >= inc && TotalLimit <= EventLimit - 1){ 
     results.add(caldavOutput); 
     } 
    TotalLimit++; 
     } 
}catch (SardineException e){ 
} 
Смежные вопросы