Вопрос, который я пытаюсь решить это: http://codingbat.com/prob/p128270Справка по массиву индексирования Java. CodingBat
Учитывая 2 ИНТ массивы, а и б, любой длины, возвращает новый массив с первым элементом каждого массива. Если любой массив равен length 0, игнорируйте этот массив.
front11({1, 2, 3}, {7, 9, 8}) → {1, 7}
front11({1}, {2}) → {1, 2}
front11({1, 7}, {}) → {1}
Мой код до сих пор:
public int[] front11(int[] a, int[] b) {
int answerindexs = 2;
if(a.length == 0 || b.length == 0)
answerindexs = 1;
if(a.length == 0 && b.length == 0)
answerindexs = 0;
int[] answer = new int[answerindexs];
for (int x = 0; x <= 1; x++){
if(a.length > 0 && x == 0)
answer[0] = a[0];
else if(b.length > 0 && x == 1)
answer[1] = b[0];
}
return answer;
}
Этот вопрос я пытался сделать сам полностью подчеркнув меня, потому что каждая попытка я пытаюсь сделать Java не работает так, как я думал, он сделал. Единственный тест, который я не пропустил;
front11({}, {2, 8}) → {2}
Потому что я получаю индекс из связанной ошибки, и у меня возникли проблемы с попыткой решить этот конкретный тест. Поскольку я не уверен, как проверить, есть ли у моего массива ответов уже элемент, поскольку answer.length всегда 2, хотя у него нет назначенного элемента в каждом индексе, поскольку он по умолчанию равен нулю.
Любая помощь была оценена, если бы кто-нибудь мог улучшить мои два утверждения if в начале (он работает для небольших чисел, но я знаю, когда он добирается до больших чисел, я не могу написать такой код). Я хотел ответить на этот вопрос, используя ArrayList, поскольку я могу просто .add(), но этот вопрос задает массив, который раздражает, чтобы узнать, сколько слотов необходимо установить.
Красиво сделано, спасибо: D – NewtoJava
Любые советы о том, как установить количество индексов в моем списке или был единственным, что я сделал? – NewtoJava
Обновлен мой ответ с кратчайшим способом определения количества индексов, о которых я мог думать. – user3068350