Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> List 
:(
    Опции темы
Predator83
Дата 19.4.2007, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 53
Регистрация: 16.12.2006

Репутация: нет
Всего: нет



Привет всем!
Есть класс 

Код

class Item {
  String descr;
  String title;
  Date   date;

  // Далее get, set методы
}


Есть два List с этими объектами, хочу сделать третий List в котором бы чередовались записи из этих двух List'ов.
Например заполнялось по 2 записи из одного List по 3 записи из другого Listи т.д. (размер Listов разный)

PM   Вверх
Predator83
Дата 19.4.2007, 16:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 53
Регистрация: 16.12.2006

Репутация: нет
Всего: нет



Типа такого, но что-то очень все тяжело

Код

     int k = 0;
     List rezultList = new ArrayList();
     for (int i = 0; i < rssList.size(); i++) {
         if (k != dbList.size) {
             if (i % 5 == 0) {
                 // Copy 5 object             
                 for (int u = 0; u < 5; u++) {
                     if (k != dbList.size()) {
                         rezultList.add(dbList.get(k));
                         k ++;
                     }
                 }
             }     
         }
         rezultList.add(rssList.get(i));
     }

PM   Вверх
W0LF
Дата 19.4.2007, 16:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


alexander lonsky
***


Профиль
Группа: Участник
Сообщений: 1164
Регистрация: 9.2.2006
Где: Ukraine.Dnepropet rovsk

Репутация: нет
Всего: 20



А в чем собственно проблема? ты можешь вернуть массивом все items первого list, второго listи потом как тебе надо заполнить третий list


--------------------
iOS developer
PM MAIL WWW Skype GTalk   Вверх
Predator83
Дата 19.4.2007, 16:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 53
Регистрация: 16.12.2006

Репутация: нет
Всего: нет



Ну вот сверху я написал процесс копирования но мне он показался дрстаточно сложным.
PM   Вверх
nornad
Дата 19.4.2007, 21:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1079
Регистрация: 16.2.2007
Где: в Караганде

Репутация: 16
Всего: 31



Код

int ary1items = 2;
int ary2items = 3;
int totalStepItems = ary1items + ary2items;
int ary1count = rssList.size();
int ary2count = dbList.size();
int totalCount = ary1count + ary2count;
int ary1index = 0;
int ary2index = 0;
for( int i = 0; i < totalCount; ++i ) {
  if ( (i % totalStepItems) < ary1items ) {
    rezultList.add( rssList.get( ary1index++ ) );
  } else {
    rezultList.add( dbList.get( ary2index++ ) );
  }
}

Только если в одном массиве элементов не хватит - оно ругнётся. smile
Чтобы не ругалось, надо так:
Код

for( int i = 0; i < totalCount; ++i ) {
  if ( (i % totalStepItems) < ary1items ) {
    if ( ary1index < ary1count )
      rezultList.add( rssList.get( ary1index++ ) );
    else
      rezultList.add( dbList.get( ary2index++ ) );
  } else {
    if ( ary2index < ary2count )
      rezultList.add( dbList.get( ary2index++ ) );
    else
      rezultList.add( rssList.get( ary1index++ ) );
  }
}



--------------------
Три достоинства программиста: Леность, Нетерпение и Гордость
Ларри Уолл
PM MAIL WWW ICQ Skype MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0741 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.