2012-02-25 217 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如果这是任何帮助。

我可以

C =(字符串[])ArrayUtils.addAll结合2门阵列(A,B);

但是,这只是让

有谁做过C = “LINE-1”, “2号线”, “3号线”, “4号线”?

回答

6

如果阵列具有相同的长度,大约

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

只是在一个循环中将相应的字符串是什么?

+0

A&B应该总是相同的长度,虽然未知的,所以是的,工程aslong为我设定的长度c。谢谢,这么简单:) – Jixi 2012-02-25 20:17:01

6

您可以使用StringUtils.join从公郎“胶水”串在一起:

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

可能有点的情况下,更快,你需要连接两个以上的阵列,但在的情况下,只是两个阵列,它几乎肯定会变慢。

+0

这是来自外部库。 – Mob 2012-02-25 20:11:02

+0

@Mob OP说他已经在使用它了:“如果有任何帮助,我会使用common v3 v3。” – dasblinkenlight 2012-02-25 20:11:43

+0

Aighht。然后+1。 – Mob 2012-02-25 20:12:38

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]; 
}