C#中陣列如何賦值
宣告陣列之後,可以立即為其填入值。方法是在一對大括號中,使用以逗號分隔的資料項清單。程式碼清單2-30宣告了一個字串數組,然後在一對大括號中指定了9種不同的程式語言的名稱。
宣告數組的同時進行賦值
string[] languages = { "C#", "COBOL", "Java",
"C++", "Visual Basic", "Pascal",
"Fortran", "Lisp" , "J#"};
在這個以逗號分隔的列表中,第一項成為數組的第一個元素,第二項成為第二個元素,依此類推。我們使用大括號來定義一個陣列字面量。
只有在同一個語句中宣告並賦值時,程式碼清單2-30的賦值語法才可用。如果是在聲明了之後才進行賦值,則需要使用new關鍵字和對應的資料類型,如程式碼清單2-31所示。
代碼清單2-31 聲明之後再進行數組賦值
string[] languages;
languages = new string[]{"C#", "COBOL", "Java",
"C++", "Visual Basic", "Pascal",
"Fortran", "Lisp", "J#" };
C#也支援將new關鍵字作為宣告語句的一部分使用,所以它允許像程式碼清單2-32那樣的賦值和宣告。
程式碼清單2-32 宣告的同時使用new進行陣列賦值
string[] languages = new string[]{
"C#", "COBOL", "Java",
"C++", "Visual"C#", "COBOL", "Java",
"C++", "Visual VI "Pascal",
"Fortran", "Lisp", "J#"};
string[] languages = new string[9]{
"C#", "COBOL", "Java",
"C++", "Visual"C#", "COBOL", "Java",
"Fortran", "Lisp", "J#"};
在初始化語句中,數組的大小和大括號中包含的元素數量必須匹配。除此之外,也可以分配一個數組,但不指定它的初始值,如程式碼清單2-34所示。
程式碼清單2-34 分配數組,但不指定初始值
分配一個數組但不指定初始值仍然會初始化每個元素。 「運行時」會將每個元素初始化為它們的預設值,如下所示:
引用型別(如string)初始化為null;
數值型別初始化為零;
bool初始化為false;
char初始化為