Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > удалить элементы массива Object


Автор: SHOM 2.9.2011, 11:20
Есть три четырехмерного массива

Object [][][][] ss1
Object [][][][] ss2
Object [][][][] ss3


       for (int a1=0;a1<ss3.length;a1++)
         {
             System.out.println(ss3[a1][1][0][0]);
         }

Если  2,3,4-я мерность [1][0][0] соответственно, то там содержится айди

Из ss3 надо удалить, если в ss3 есть такие айди из ss1 и ss2

Автор: Nofate 2.9.2011, 11:39
сделайте сравнение во вложенном цикле
Если я правильно вас понял, что-то вроде:

Код

for (int i=0; i<ss3.length; i++)  {
  //сверяем с первым массивом
  for (int j=0; j<ss1.length; j++) {
    if (ss3[i][1][0][0].equals(ss1[j][1][0][0])) {
      ss3[i] = null;
    }
  }

  //сверяем со вторым массивом
  for (int j=0; j<ss2.length; j++) {
    if (ss3[i][1][0][0].equals(ss2[j][1][0][0])) {
      ss3[i]= null;
    }
  }
}


както примерно так. потом нужно еще пробежаться по ss3  и пустые места удалить (например отсортировать так чтоб null-ы остались в конце и сделать System.arraycopy)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)