|
分類:[.NET 全般]
以下のような配列があるとします
string[,] s23 = new string[2, 3] { { "A", "1", "a" }, { "B", "2", "b" } }; string[,,] s234 = new string[2, 3, 4] { {{ "A1", "A2", "A3", "A4" }, { "B1", "B2", "B3", "B4" }, { "C1", "C2", "C3", "C4" }}, {{ "D1", "D2", "D3", "D4" }, { "E1", "E2", "E3", "E4" }, { "F1", "F2", "F3", "F4" }}, };
以下の文字列を取得する関数をひとつにまとめるにはどうすればよいのでしょうか? string[,] s23 ⇒ "A, 1, B, 2, C, 3", string[,,] s234 ⇒ "A1, A2, A3, A4, B1, B2, B3, B4, C1, C2, ・・・・ E3, E4, R1, F2, F3, F4"
やはり、以下のようにそれぞれ必要な次元数別に作るしかないのでしょうか?
private string Get2(dynamic Array) { string str = ""; for(int inum1 = 0; inum1 < Array.GetLength(0); inum1++) { for(int inum2 = 0; inum2 < Array.GetLength(1); inum2++) { str += ((str == "") ? "" : ", ") + Array[inum1, inum2]; } } return (str); }
private string Get3(dynamic Array) { string str = ""; for(int inum1 = 0; inum1 < Array.GetLength(0); inum1++) { for(int inum2 = 0; inum2 < Array.GetLength(1); inum2++) { for(int inum3 = 0; inum3 < Array.GetLength(2); inum3++) { str += ((str == "") ? "" : ", ") + Array[inum1, inum2, inum3]; } } } return (str); }
|