2012-02-25 6 views
2

В основном у меня есть несколько массивов строк, и я хочу их объединить.Объединение нескольких массивов строк в один

Не просто расширить первый массив, а объединить a[0] и b[0] в одну строку.

так:

String[] a = {"line1", "line2"}; 
String[] b = {"line3", "line4"}; 
String[] c; 
Combine code here 
c[0] == "line1line3"; 
c[1] == "line2line4"; 

Я использую обыкновенные языки v3, если это любая помощь.

можно объединить 2 массивы с

с = (String []) ArrayUtils.addAll (а, б);

Но это только делает с = "line1", "line2", "Line3", "Line4"

Кто-нибудь делал это?

ответ

6

Если массивы имеют одинаковую длину, то, о

for(int i = 0; i < a.length; ++i){ 
    c[i] = a[i] + b[i]; 
} 

просто конкатенации соответствующих строк в цикле?

+0

и б всегда должна быть такой же длины, хотя неизвестно, так что да, что работает aslong, как я установить длину в. Спасибо, так просто :) – Jixi

6

Вы можете использовать StringUtils.join от Commons Lang для «склеивания» строки вместе:

for (int i = 0 ; i != c.length ; i++) { 
    c[i] = StrungUtils.join(a[i], b[i]); 
} 

Это может быть немного быстрее в том случае, что вам нужно подключить более двух массивов, но в случае только два массива почти наверняка будут медленнее.

+0

Это из внешней библиотеки. – Mob

+0

@Mob OP говорит, что он уже использует его: «Я использую commons lang v3, если это поможет». – dasblinkenlight

+0

Aighht. +1 затем. – Mob

2
c = new String[a.length]; 
for (int i=0; i<a.length; i++) 
{ 
    c[i] = a[i] + b[i]; 
} 
2

вам придется добавить обработку недействительных индексов, но здесь вы идете:

String[] c = new String[len]; 
for(int i = 0; i < len; i++){ 
    c[i] = a[i] + b[i]; 
} 
Смежные вопросы