2
respostas

Explicação por favor!

Não estou entendendo a parte do código em que

               x[x[1]]=-5;

Não entendo como esse código significa, debugando fica claro que -5 é adicionado na posição 3. E fazendo outras simulações com esse tipo de construção por ex: x[x[x[1]]], ou seja adicionando mais um x , sinifica que é a posição 24 de um array. Agradeceria muito se alguém pudesse explicar. Complementaria a explicação que o colega deu em 2016, mas que foi muito importante.

2 respostas

Oi Denise blza , segue um código que simulei a sua dúvida espero ter ajudado .

int [] num = new int[5];

num[0]=1;
num[1]=2;
num[2]=3;
num[3]=4;
num[4]=5;
                                                                         //num[1]=2;
num[num[1]]=-5;                   // veja que num[1] devolve o valor 2 => num[num[1]] é a mesma coisa que num[2] então está posição receberá o valor -5


for(int i:num){
System.out.println(i);
}

// a saída será 1,2,-5,4,5

Olá Filipe, obrigada por responder, mas acho que não deixei bem claro qual é a minha dúvida. Sobre a reatribuição de valores, ok! Isso eu entendo. Mas, me refiro sobre a construção de um array dentro de outro array sucessivamente. Você pode simular adicionando mais um como esse x[x[x[1]]] e a sua posição será 24, debuguei várias vezes, mas não consegui entender essa dinâmica, assim como x[x[1]]. E não encontrei nenhum exemplo que se assemelhe ao exercício.