Dúvida em conversão de object para string

Gente,
Estou com dificuldade no código abaixo:


1  Iterator ite = rendHistGNO.iterator(); 
2       int j=0;
3    
4       List lista1 = new List();
5       while(ite.hasNext()){ 
6
7            Object capturaArray = ite.next();
8 
9            lista1.add(String.valueOf(capturaArray[1])); 
10              
11          System.out.println(lista1);
12           j++;
13  }

onde:
rendHistGNO é uma ArrayList de Strings
Na linha 10 me retorna que foi encontrado um object e o requerido é uma array.
Como faço para carregar somente um campo deste Arraylist para uma List (carregar um elemento List de um determinado campo de cada linha da ArrayList)?

Desde já,
Obrigado!
Edilson Cavalieri

Provavelmente você deveria ter feito isto:

  Iterator ite = rendHistGNO.iterator(); 
       int j=0;
    
       List lista1 = new ArrayList(); // você não pode instanciar um List
       while(ite.hasNext()){ 
            // você disse que rendHistGNO é um List de Strings...
            String captura = (String) ite.next();
 
            lista1.add(captura); 
              
           j++;
  }
          System.out.println(lista1);

Na linha:
List lista1 = new ArrayList(); // você não pode instanciar um List

não posso instanciar como List. Quando instancio:
ArrayList lista1 = new ArrayList();

vem um erro de runtime:

Exception in thread “AWT-EventQueue-0” java.lang.ClassCastException: [Ljava.lang.String;
at cpa.mrplRendimentos.jButton1002ActionPerformed(mrplRendimentos.java:970)

na linha:
String captura = (String) ite.next();

rendHistGNO é uma “ArrayList”

Grato,
Edilson Cavalieri

rendHistGNO deve ser um List de String[], não um List de String, para dar o tal erro. Então deve ser algo como:

   Iterator ite = rendHistGNO.iterator(); 
        int j=0;
     
        List lista1 = new ArrayList(); // você não pode instanciar um List, apenas um ArrayList
        while(ite.hasNext()){ 
             // você disse que rendHistGNO é um List de Strings...
             String[] capturaArray = (String[]) ite.next();
  
             if (capturaArray.length >= 2)
                 lista1.add(capturaArray[1]);  // Estou supondo que você quer pegar o segundo elemento do array "capturaArray"
               
            j++;
   }
           System.out.println(lista1);

Valeu, o erro era este!

Obrigado,
Edilson