配列の結合をしたいです – プログラミング – Home

配列の結合をしたいです
 
通知
すべてクリア

[解決済] 配列の結合をしたいです


gama
 gama
(@gama)
ゲスト
結合: 18年前
投稿: 9
Topic starter  

初歩的な質問で申し訳ないのですが
string[] A = new string[]{1,2};
string[] B = new string[]{3,4};

Aという配列と、Bという配列があって、A配列にB配列を結合したいのですが
どのようにやればよいですか。

Arrayクラスのメソッドをみたところ、AddやMergeみたいなものはないみたいですし。
再度、配列を定義して、コピーするしかない?


引用未解決
トピックタグ
YuO
 YuO
(@YuO)
ゲスト
結合: 22年前
投稿: 320
 

配列自体をマージは出来ないと思います。
System.Collections.Generics.List<System.String>を使って,

List<string> temp = new List<string>(A);
temp.AddRange(B);
string[] merged = temp.ToArray();

あたりが簡単かと。
# .NET Framework 1.xならばList<string>ではなくArrayListを利用。

まぁ,
string[] newStrings = new string[A.Length + B.Length];
A.CopyTo(newStrings, 0);
B.CopyTo(newStrings, A.Length);
の方が効率は良さそうですけどね。


返信引用
gama
 gama
(@gama)
ゲスト
結合: 18年前
投稿: 9
Topic starter  

ご回答ありがとうございます。

やっぱりマージはできないんですね。
再度、配列を定義して、コピーってぱっと、コードがでてこなかったんですけど

>string[] newStrings = new string[A.Length + B.Length];
>A.CopyTo(newStrings, 0);
>B.CopyTo(newStrings, A.Length);
これだけなんですね。

これでもシンプルでいいですね。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました