Dividir ArrayList de 10 em 10 conjuntos e desses 10 em outros 3 conjuntos

Boa tarde pessoal!

Seguinte eu tenho um arraylist com um certo número de registros, e a cada 10 registros ele forma um conjunto que eu preciso e desses 10 registros tenho que dividir em mais três conjuntos os 4 primeiros são uma valor os próximos 3 são outro e os 3 é o ultimo e volta tudo de novo até o array acabar. Eu fiz isso:

[code]
//populo o arraylist
ArrayList list = new ArrayList();
int i = 0;
while (i <= 258) {
list.add(i);
}

//os três conjuntos
StringBuilder conjunto1 = new StringBuilder();
StringBuilder conjunto2 = new StringBuilder();
StringBuilder conjunto3 = new StringBuilder();

while (!list.isEmpty()) {
int i = 0;

while (i <= 10) {
while (i <= 4) {
String valor = list.get(i).toString();
list.remove(0);

  conjuno1.append(valor);
  i++;
}

while (i &gt;= 5 && i &lt;= 7) {
  String valor = list.get(i).toString();
  list.remove(0);

  conjuno2.append(valor);
  i++;
}

while (i &gt;= 8 && i &lt;= 10) {
  String valor = list.get(i).toString();
  list.remove(0);

  conjuno3.append(valor);
  i++;
}

}[/code]

lógico que esta dando errado já que não estão vindo os valores que devem ser.
Poderiam me ajudar, espero ter sido claro

Cara … vc precisa Incrementar o “I”

while (i <= 258) { list.add(i); i++;//INCREMENTANDO }

[quote=Diego Adriano]Cara … vc precisa Incrementar o “I”

while (i <= 258) { list.add(i); i++;//INCREMENTANDO } [/quote]

Opa, desculpa ai :smiley: é que o meu array de verdade vem de outro lugar eu criei esse trecho de código enquanto estava criando o tópico era só para mostrar um array meio que populado.

Então alguém poderia me dar uma ajudinha em separar de dez em dez e desses dez criar o valor para os outros 3 conjuntos?

Ola pessoal, aqui estou novamente para dizer que resolvi o que eu precisava, de uma forma muito estranha, não é bonito nem a melhor de todas, mas funcionou:[code]
public static void main(String[] args) {
ArrayList list = new ArrayList();

int i = 0;
String valor = &quot;&quot;;

while (i &lt;= 260) {
  if (i &lt; 10) {
    valor = &quot;0&quot; + i;
  } else {
    valor = i + &quot;&quot;;
  }
  list.add(valor);
  i++;
}

int count = 0;

while (!list.isEmpty()) {
  try {
    int z = 0;
    
    System.out.println(&quot;Inicia o conjunto de 10 &quot; + count);
    while (z &lt;= 10) {
      System.out.println(&quot;Inicia o conjunto de 5&quot;);
      
      int cinco = 0;
      while (cinco &lt; 5) {
        System.out.println(list.remove(0));
        cinco++;
        z++;
      }
      
      System.out.println(&quot;Inicia o conjunto de 3 um&quot;);
      
      int tresUm = 0;
      while (tresUm &lt; 3) {
        System.out.println(list.remove(0));
        tresUm++;
        z++;
      }
      
      System.out.println(&quot;Inicia o conjunto de 3 dois&quot;);
      
      int tresDois = 0;
      while (tresDois &lt; 3) {
        System.out.println(list.remove(0));
        tresDois++;
        z++;
      }
      
      z++;
      
      System.out.println(&quot;Fim&quot;);
    }
    System.out.println(&quot;------------------&quot;);
    count++;
  } catch (Exception e) {
    System.out.println(&quot;Erro: &quot; + e.getMessage());
  }

}    

}[/code]