Как добавить два массива символов и получить вывод в виде массива символов

#java #arrays

Вопрос:

Я хочу объединить два массива символов:

 char[] vowels1 = {'a', 'e', 'i', 'o', 'u'}; 
char[] vowels2 = {'A', 'E', 'I', 'O', 'U'}; 
 

и получите результат как [a, e, i, o, u, A, E, I, O, U] .

Как я могу сделать это на Java?

Комментарии:

1. Кажется, это простая проблема. Что вы пробовали самостоятельно? Вы проводили какие-нибудь исследования? Если вы это сделали, пожалуйста, укажите проблему, с которой вы столкнулись.

Ответ №1:

Вы можете использовать System.arraycopy() метод для копирования vowels1 и vowels2 передачи содержимого vowels3 . Его подпись выглядит следующим образом:
arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
Где:
src обозначает исходный массив.
srcPos-это индекс, с которого начинается копирование.
dest обозначает массив назначения.
destPos-это индекс, из которого скопированные элементы помещаются в массив назначения.
длина-это длина подмассива, который необходимо скопировать.

         char[] vowels1={'a','e','i','o','u'};
        char[] vowels2={'A','E','I','O','U'};
        
        char[] vowels3 = new char[vowels1.length   vowels2.length];
        System.arraycopy(vowels1 , 0, vowels3, 0, vowels1.length);
        System.arraycopy(vowels2 , 0, vowels3, vowels1.length, vowels2.length);
        
        System.out.println(Arrays.toString(vowels3));
 

Выход:
[a, e, i, o, u, A, E, I, O, U]

Ответ №2:

Вы можете преобразовать их в строки, объединить эти строки и преобразовать их обратно в массив. Не самый эффективный вариант, заметьте, но требуется очень мало кода:

 char[] vowels = (new String(vowels1) new String(vowels2)).toCharArray();