2

重複の可能性:
.NETで2つの配列をマージ
するC#で2つの配列を連結するにはどうすればよいですか?

string[]2つの変数をマージするにはどうすればよいですか?

例:

string[] x = new string[] { "apple", "soup", "wizard" };
string[] y = new string[] { Q.displayName, Q.ID.toString(), "no more cheese" };

これら2つを追加して、内容が次のようになるようにしxます{"apple", "soup", "wizard",Q.displayName, Q.ID.toString(), "no more cheese"};。この順序で。これは可能ですか?結果を新しい文字列配列に入れる必要がある場合は、問題ありません。それを実現する方法を知りたいだけです。

4

4 に答える 4

10

この答えから:

var z = new string[x.length + y.length];
x.CopyTo(z, 0);
y.CopyTo(z, x.length);
于 2012-07-25T20:31:08.463 に答える
3

あなたは試すことができます:

string[] a = new string[] { "A"};
string[] b = new string[] { "B"};

string[] concat = new string[a.Length + b.Length];

a.CopyTo(concat, 0);
b.CopyTo(concat, a.Length);

次にconcat、連結された配列です。

于 2012-07-25T20:35:06.590 に答える
2

.NET 2.0について言及し、LINQが利用できないため、「手動で」実行することに本当に行き詰まっています。

string[] newArray = new string[x.Length + y.Length];
for(int i = 0; i<x.Length; i++)
{
   newArray[i] = x[i];
}

for(int i = 0; i<y.Length; i++)
{
   newArray[i + x.Length] = y[i];
}
于 2012-07-25T20:34:52.120 に答える
1

これを試して。

     string[] front = { "foo", "test","hello" , "world" };
     string[] back = { "apple", "soup", "wizard", "etc" };


     string[] combined = new string[front.Length + back.Length];
     Array.Copy(front, combined, front.Length);
     Array.Copy(back, 0, combined, front.Length, back.Length);
于 2012-07-25T20:35:15.880 に答える