[英]C# jagged array not initializing
試圖制作一個有 10 列和 10 行的 2D 鋸齒狀數組。 當我嘗試初始化第一列時,它出現了多個錯誤,我不確定我做錯了什么。
class Program
{
int[][] board = new int[10][];
board[0] = new int[5];
...
}
您必須將任何不是聲明的代碼放入方法中
class Program
{
static int[][] board = new int[10][];
static void Main()
{
board[0] = new int[10];
...
}
}
這里board
是類的一個字段。 您還可以將其設置為方法內的局部變量:
class Program
{
static void Main()
{
int[][] board = new int[10][];
board[0] = new int[10];
...
}
}
類字段和局部變量之間的區別在於,如果該字段是公共的並且對於靜態字段“永遠”存在並且只要從該類創建的對象對於實例字段存在,則可以從外部訪問該字段,而局部變量可以只能在方法內訪問,並且通常只在方法調用持續期間有效(不討論迭代器方法等特殊情況)。
鋸齒狀數組在兩種情況下很有用
否則我會使用一個可以立即初始化的二維數組
int[,] board = new int[10, 10];
如果您希望數組有 10 行和 10 列,則不應使用鋸齒狀數組。 用:
int[,] board = new int[10, 10];
反而
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.