Considere el siguiente fragmento de código en Java. Sé que la declaración temp[index] = index = 0;
en el siguiente fragmento de código es bastante inaceptable, pero puede ser necesario en algunas situaciones y, por lo tanto, es necesario saber.Asignación de matriz de encadenamiento en Java
package arraypkg;
final public class Main
{
public static void main(String... args)
{
int[]temp=new int[]{4,3,2,1};
int index = 1;
temp[index] = index = 0;
System.out.println("temp[0] = "+temp[0]);
System.out.println("temp[1] = "+temp[1]);
}
}
muestra la siguiente salida en la consola.
temp[0] = 4
temp[1] = 0
No entiendo esta declaración temp[index] = index = 0;
. ¿Cómo contiene temp[1]
0
? ¿Cómo ocurre esta asignación?
¿Qué esperas 'temp [1]'? –
Creo que es bastante claro que espera que 'index' se convierta primero en' 0' haciendo 'temp [index]' equivalente a 'temp [0]' para que solo se modifique el primer elemento. –
El mensaje para llevar a casa aquí debe ser, no escriba el código de esta manera. Conocer los pedazos de Java es una habilidad respetable, pero sobre todo inútil. Código como este simplemente no debería existir, y donde se encuentra debe ser erradicado inmediatamente. – rfeak