Порядок работы в JavaJavascript

Форум по Javascript
Ответить
Anonymous
 Порядок работы в Java

Сообщение Anonymous »

Мне сложно отследить и понять, как Java (и Javascript) обрабатывает следующий код:

Код: Выделить всё

// Java
int   i = 0;
int[] a = {10, 20, 30, 40, 50, 60};

a[++i] = a[i++] = a[++i] = ++i;
System.out.println(Arrays.toString(a));
// [10, 4, 30, 4, 50, 60]

// Javascript
let i = 0;
const a = [10, 20, 30, 40, 50, 60];
a[++i] = a[i++] = a[++i] = ++i;
console.log(a);
// [10, 4, 30, 4, 50, 60]
При запуске выводятся числа [10, 4, 30, 4, 50, 60].
Мы можем даже упростить этот пример:

Код: Выделить всё

int   i = 0;
int[] a = {10, 20};

a[i] = ++i;
System.out.println(Arrays.toString(a));
// [1, 20]
Я ожидал, что это выведет [10, 1], потому что сначала правая часть. Но результат — [1, 20], но как?

Подробнее здесь: https://stackoverflow.com/questions/793 ... on-in-java
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»