public class as {
public static void main(String[] args) {
int[] a = new int[]{1}; // Происходит ввод числа "1"
a = yvelichenieMassiva(a);
for(int i : a)
System.out.println(a[i] + " ");
}
static int[] yvelichenieMassiva(int[] array){
int[] abc = new int[array.length + 1];
for (int i = 0; i < abc.length; i++) {
if(i < array.length)
abc[i] = array[i];
else abc[i] = 2;// Происходит ввод числа "2"
}
return abc;
}
}
Вывод должен быть " 1 2 " но этого не происходит , а вот если бы я вводил " 1 1 " всё корректно заработало Zubr
26 уровень
Почему программа работает не корректно и как исправить
Решен
Комментарии (5)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Ksenia VolkovaJava Developer в DXCMaster
8 сентября 2021, 21:45
Что такое i ?
0
Zubr
8 сентября 2021, 21:50
"i" отвечает за индекс массив, как я понял он начинает роботу с нуля и до конца массива пока не дойдет до ".length - 1"
forech
0
Zubr
8 сентября 2021, 21:56
так работает
но почему в том варианте не работает?
0
Ksenia VolkovaJava Developer в DXCMaster
8 сентября 2021, 22:00решение
for (int i = 0; i < abc.length; i++) - в этом цикле i - это индекс, да
for(int i : a) - а в этом нет )
+2
Zubr
8 сентября 2021, 22:05
мда, i это и есть массив, то есть содержимое
спасибо за подсказку
0