В целом, задача вполне понятна и как она решается, тоже было ясно.
В голове быстро "написал алгоритм", но с переносом его в код возникли проблемы.
Посмотрел решение авторов. Алгоритм я понял правильно, но...
Собственно, все вопросы указал в комментариях кода. Заранее благодарен
package com.javarush.task.pro.task05.task0504;
/*
Объединяем массивы
*/
public class Solution {
public static int[] firstArray = new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
public static int[] secondArray = new int[]{10, 11, 12, 13, 14, 15, 16, 17, 18, 19};
public static int[] resultArray;
public static void main(String[] args) {
resultArray = new int[firstArray.length + secondArray.length];
/* инициализировали новый массив и указали, что его размер,
это размер массива 1 + размер массива 2...тут ясно и логично */
for (int i = 0; i < firstArray.length; i++) {
resultArray[i] = firstArray[i];
/* циклом прошлись по массиву 1, чтобы определить значения, которые в его ячейках
и сказали, что эти значения должны быть в массиве result....
... объясните пожалуйста, значение [i] и зачем мы их тут указываем ведь длина массива result
нами уже указана. Почему нельзя написать строчку в виде resultArray = firstArray ?*/
}
for (int i = 0; i < secondArray.length; i++) {
resultArray[i + firstArray.length] = secondArray[i];
/* по аналогии, прошлись циклом по второму массиву для определения его значений
и указали, что эти значения должны быть в массиве result. Но тут опять таки не понятна запись в []
По идее, мы уже определили, что длинна массива result это длина массива 1 + длина массива 2
Объясните пожалуйста, как правильно прочитать то, что написано в [] */
}
for (int i = 0; i < resultArray.length; i++) {
System.out.print(resultArray[i] + ", ");
}
}
}