public class RefMix {
public static void main(String[] args) {
Object[] a = {null, "foo"};
Object[] b = {"bar", b};
a[0] = b;
System.out.println(a[0][0]);
}
}
Tengo entendido que las matrices son objetos en Java y, por lo tanto, una subclase del tipo de objeto. Mi entendimiento adicional es que una matriz de 2 dim se implementa como una matriz de referencias a matrices. Por lo tanto, no entiendo por qué mi a [0] [0] no produce bar
en el código anterior. En su lugar, no se compila:Tipo de objeto en Java y matrices de referencia
RefMix.java:7: array required, but java.lang.Object found
La fealdad de un elenco como este me ha inspirado a abandonar el uso de matrices como esta; Usaré una clase "normal" de referencias a objetos. ¡Pero gracias! – Fixee
@Fixee, las matrices en Java son bastante feas, pero a menudo puede evitar la necesidad de conversiones reduciendo la cantidad de veces que almacena datos heterogéneos. Normalmente no necesita almacenar ambas cadenas y object [] s en la misma matriz. – Antimony
@Antimony En realidad, no puedo encontrar un solo caso de uso donde * necesitarías * tal cosa ...;) – brimborium