Convertir lista de matriz de objetos en matriz de cadenas

Actualmente tengo el siguiente código, donde trato de transmitir de Objeto a Cadena y recibo un error de excepción.

¿Cuál es la mejor manera de convertir esta matriz de objetos en una matriz de cadenas para que funcione en mi bucle for? ¿O hay una manera de alterar mi bucle for para mostrar la matriz Object?

<%

          Class.forName("org.sqlite.JDBC");
            Connection conn = DriverManager.getConnection("jdbc:sqlite:/Users/rhysparker/Documents/workspace/Resource_Planner/WebContent/db/RESOURCE.SQLITE");
                Statement stat = conn.createStatement();

                ArrayList<ArrayList<String>> al = new ArrayList<ArrayList<String>>();

                ResultSet rs = stat.executeQuery("select project_name from project;");

                ResultSetMetaData metaData = rs.getMetaData();
                int columns = metaData.getColumnCount();

                while (rs.next()) {
                    ArrayList<String> record = new ArrayList<String>();
                    for (int i = 1; i <= columns; i++) {
                        String value = rs.getString(i);
                        record.add(value);
                    }
                    al.add(record);
                }

                String[] testing = (String[])al.toArray();

                for(int i=0;i<testing.length;i++) 
                { %> 
                <option value="<%=testing[i]%>"><%=testing[i]%></option><% 
                } 

                rs.close();
               conn.close();
            %>
Respuesta 1
 I get an exception error.

Sí porque ales tipo deArrayList<String> ArrayList<ArrayList<String>> al = new ArrayList<ArrayList<String>>();

Y lo estás convirtiendo en una serie de cadenas

String[] testing = (String[])al.toArray();

por lo que arrojará una excepción en tiempo de ejecución como.

Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;

Si está agregando Arraylistdentro de la lista de arrays, es su responsabilidad asegurar la verificación de tipo.

Puedes hacer algo como lo siguiente:

for (ArrayList<String> list: al)
 {
    String[] testing = list.toArray(new String[0]); // or (String[]) arr.toArray();
    for(int i=0;i<testing.length;i++) 
     { %> 
        <option value="<%=testing[i]%>"><%=testing[i]%></option><% 
     }
 }
Respuesta: 2
ArrayList<ArrayList<String>> list = new ArrayList<ArrayList<String>>();
String[] array = (String[])list.toArray(new String[list.size()]);

¿Quieres decir algo como esto? Prueba esto.

Respuesta: 3

Esto se debe a que su ales multidimensional (ArrayList of ArrayList, que contiene una tabla de base de datos, supongo). El siguiente
código lo ayudará a completar su testingmatriz.

int maxColumn = 100;    //Assuming not more than 100 columns
int rowSize = a1.size();
String[] s1 = new String[maxColumn];
String[][] testing = new String[rowSize][maxColumn];    
for(int i=0; i<rowSize; i++)
{
    ArrayList a1 = al.get(i);
    s1 = a1.toArray();
    for(int j=0; j<s1.length; j++)
        testing[i][j] = s1[j];
}

testinges la matriz bidimensional que tiene el registro de la tabla. Ahora bien, para los que la columna tiene que asignar en su <option>campo que los asuntos
que usted necesita para asignar column 3
Así que su for-loopllegarán a ser

for(int i=0;i<rowSize;i++) 
{ %> 
    <option value="<%= testing[i][3] %>"><%=testing[i]%></option>
<% } 
Respuesta: 4

timer.scheduleAtFixedRate (function_to_execute, 0, 5000); Había leído el ejemplo anterior, pero me gustaría iniciar la función en una fecha y hora específicas como 2013/01/13, 13:15 pm. Cómo configurar el temporizador ...

Soy nuevo en Programación JAVA y estoy tratando de crear un programa de cifrado / descifrado de cifrado César. Lamentablemente, mi programa solo funciona en minúsculas. No puedo ver dónde me equivoqué, lo intenté ...

Este es un proyecto de programación orientado a objetos de grado 12. Tengo una clase llamada Ball para construir mi objeto ball. import java.awt. *; import java.awt.event. *; import javax.swing. *; import java.util. *; ...

Tengo un sitio web que envía información dinámica a los usuarios a través de servlets. No tiene estado y no hay inicios de sesión. Este sitio específico utiliza una cantidad decente de llamadas doPost () y doGet () del cliente ...