Convertir ArrayList<String> a String[] en Java: ¿cómo hacerlo correctamente?
¡Hola a todos! Soy nuevo en Java y me encontré con este problema. Tengo un ArrayList<String> que almacena nombres de usuarios. Necesito pasar esta lista a un método que solo acepta String[] (array de strings). Intenté simplemente hacer un cast, pero el compilador se queja. Aquí está mi código:
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<String> names = new ArrayList<>();
names.add("Анна");
names.add("Петр");
names.add("Мария");
// Intento convertir a array
String[] namesArray = (String[]) names; // ¡Error de compilación!
processNames(namesArray);
}
public static void processNames(String[] names) {
for (String name : names) {
System.out.println(name);
}
}
}
Recibo el error: java.lang.ClassCastException: java.util.A