簡體   English   中英

將項添加到Jagged數組

[英]Add item to a Jagged array

我已經看過一些數組主題,但我仍然感到難過。

我希望在我的鋸齒狀數組中添加一個新行 - 並且為了使語法正確而受到嚴格限制。

        int[][] intJaggedArray = new int[7][];

        intJaggedArray[0] = new int[3] { 1, 1, 1 };
        intJaggedArray[1] = new int[3] { 2, 2, 2 };
        intJaggedArray[2] = new int[3] { 3, 3, 3 };
        intJaggedArray[3] = new int[3] { 4, 4, 4 };
        intJaggedArray[4] = new int[3] { 5, 5, 5 };
        intJaggedArray[5] = new int[3] { 6, 6, 6 };
        intJaggedArray[6] = new int[3] { 7, 7, 7 };

所以現在如果我想補充一下

        intJaggedArray[0] = new int[3] { 1, 1, 2 };

因此陣列最終如下所示如何實現它 - 提前感謝 - 來自英格蘭的菜鳥。 (並提前表示非常感謝)

        intJaggedArray[0] = new int[3] { 1, 1, 1 };
        intJaggedArray[0] = new int[3] { 1, 1, 2 };
        intJaggedArray[1] = new int[3] { 2, 2, 2 };
        intJaggedArray[2] = new int[3] { 3, 3, 3 };
        intJaggedArray[3] = new int[3] { 4, 4, 4 };
        intJaggedArray[4] = new int[3] { 5, 5, 5 };
        intJaggedArray[5] = new int[3] { 6, 6, 6 };
        intJaggedArray[6] = new int[3] { 7, 7, 7 };

您可能想要創建集合或List<int[]>

然后你可以在某個索引處插入一個項目。

List<int[]> x = new List<int[]>();
x.Insert(3, new int[3] { 1, 2, 3 });

你想讓我做什么? 在0和1之間插入一條線? 或者替換現有的0行?

你的路線:

intJaggedArray[0] = new int[3] { 1, 1, 2 }; 

只需替換現有的0行。

您不能在數組中插入行。 為此,請使用列表:

List<int[]> myList = new List<int[]>();
myList.Add(new int[] {...});
myList.Add(new int[] {...});
myList.Add(new int[] {...});

...

myList.Insert(1, new int[] {...});

或者,如果要替換現有行,則只需:

如果希望初始列表具有可變長度,則不能使用數組。 請改用列表。

這應該工作:

List<int[]> intJaggedList = new List<int[]>();
intJaggedList.Add( new int[3] { 1, 1, 1 } );
intJAggedList.Add( new int[3] { 2, 2, 2 } );
...

然后插入新數組:

intJaggedList.Insert( 1, new int[3] { 1, 1, 2 } );

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM