Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: betico en 28 de Mayo 2014, 16:22
-
Buenas tardes.
Otra vez yo por aquí. Siento dar mucho la lata pero hay cosas con las que me atranco y no puedo seguir.
En este caso se trata del ejercicio de la entrega 79. El código que yo he escrito (creo que siguiendo las indicaciones de la explicación) es el siguiente:
Boolean [] listaBooleanos = {true, true, false, false, true, false};
LinkedList<Boolean> lista = new LinkedList<Boolean>();
lista = Arrays.asList(listaBooleanos);
Creo el array, luego creo la LinkedList y luego hago la asignación con el método asList de la clase Arrays. El problema es que me da un error al complilar en la sentencia del asList. El error que me pone es: "incompatible types: no instance(s) of type variable(s) T exist so that java.util.List<T> conforms to java.util.LinkedList<java.lang.Boolean>". Qué significa ese error?
Un saludo.
-
Hola, ¿qué versión de Java estás usando?
El problema lo veo en que Arrays.asList te devuelve un tipo List, no un tipo LinkedList, eso tienes que verlo en la especificación del método del api java. Declarando un List tendríamos:
import java.util.LinkedList;import java.util.Arrays;import java.util.List;
public class CU00679B {
public CU00679B() { }
public static void main (String[] Args) {
Boolean [] listaBooleanos = {true, true, false, false, true, false};
List<Boolean> lista = new LinkedList<Boolean>();
System.out.println ("LinkedList es primero "+ lista);
lista = Arrays.asList(listaBooleanos);
System.out.println ("LinkedList es después "+ lista);
}
}
-
Hola.
Por lo que he podido ver estoy utilizando la versión Java 6 SE.
Efectivamente, como indicas, asList devuelve un tipo List. Yo había entendido que el tipo debía ser el mismo que el utilizado en el new.
Un saludo y muchas gracias..