Как вернуть N последовательных элементов из коллекции?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как вернуть N последовательных элементов из коллекции?

Сообщение Anonymous »

Мне передана коллекция объектов (в моем случае некоторый класс Contact), и мне нужно вернуть страницу из этой коллекции.
Мой код кажется намного длиннее, чем должен быть. Мне не хватает некоторых библиотек, которые могли бы выполнить это более элегантно, чем перебирать каждый элемент по одному, как я делаю ниже?

protected Collection getPageOfContacts(
Collection contacts, int pageIndex, int pageSize) {
if (pageIndex < 0 || pageSize contacts.size()) {
return contacts;
}
int firstElement = pageIndex * pageSize;
int lastElement = (pageIndex + 1) * pageSize - 1;
Collection pagedContacts = new ArrayList();
int index = -1;
for (Contact contact : contacts) {
index++;
if (index < firstElement) {
continue;
}
if (index > lastElement) {
break;
}
pagedContacts.add(contact);
}
return pagedContacts;
}


Подробнее здесь: https://stackoverflow.com/questions/551 ... collection
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»