и бриллиант, но принцип тот же: так или иначе, вы должны предоставить достаточно информации о типе, в той или иной форме.)

ющийJEP 286: Вывод типа локальной переменной описание

Мне интересно, в чем причина введения такого ограничения, как:

Main.java:199: error: cannot infer type for local variable k

    var k = { 1 , 2 };
        ^   
(array initializer needs an explicit target-type)

Так что для меня по логике это должно быть:

var k = {1, 2}; // Infers int[]
var l = {1, 2L, 3}; // Infers long[]

Потому что компилятор JavaМожно уже правильно определите тип массива:

void decide() {
    arr(1, 2, 3);  // call  void arr(int ...arr)
    arr(1, 2L, 3); // call  void arr(long ...arr)
}

void arr(int ...arr) {
}

void arr(long ...arr) {
}

Так что же является препятствием?

Ответы на вопрос(2)

Ваш ответ на вопрос