第6天c#基礎結構體和陣列
阿新 • • 發佈:2020-11-24
結構體
定義
不能定義在函式方法內
結構體的特點
1.一個結構體中可以包含多個變數
2.當想要使用多個數據來描述一個事物時考慮使用結構體
型別和例項
型別:抽象的,學生就是一個抽象的
例項:具象的 ,比如說:小明這個學生
例項是同類型定義出來的
使用
1、定義結構體的型別
2、通過結構體型別定義變數
3、使用變數去訪問或修改資料
訪問修飾符
public
1.使用public修飾的成員為公共成員
2.公共成員在結構外部是可以通過當前結構體或類的變數去訪問或修改Public修飾的例項變數
private:私有的
1.使用private修飾的成員為私有成員
2.私有成員在結構外部是不可訪問和修改的,只能在當前的類或結構體中使用
3.如果成員沒有訪問修飾符,預設是private
陣列
概念:儲存同一個型別的一組資料的集合
分類:一維陣列,多維陣列,交錯陣列
一維陣列
定義
多個相同型別的變數的序列
訪問
1.通過下標(索引)來訪問和修改每一個元素
2.陣列的長度可以通過陣列名.Length訪問
3.索引的範圍 從0開始,到陣列的長度 - 1
陣列的初始值
1.當建立一個數組,沒有賦值的時候,系統會自動幫我們建立陣列的初始值
2.各型別的預設初始值
int:0 string:空字串 bool:false 列舉:0 結構體:結構體內部的變數的初始值規律一樣
遍歷列印
練習1:翻轉陣列
char[] letters = newchar[26]; int startA = 65; //將26個英文字母(大寫)正序放入陣列中 for (int i = 0; i < letters.Length; i++) { //大寫A = 65 //當前字母對應的ASCII int current = startA + i; letters[i] = (char)current; } //遍歷列印 for (int i = 0; i < letters.Length; i++) { Console.Write(letters[i] + "\t"); } //反轉,兩兩交換 //第1個和最後一個交換 0 <-> Length - 1 - 0//第2個和倒數第二個交換 1 <-> Length - 1 - 1 //第3個和倒數第三個交換 2 <-> Length - 1 - 2 //第i個和倒數第i個交換 i <-> Length - 1 - i //如果是2個元素,只需要交換1次 //如果是3個元素,也是交換1次 //如果是10個元素,交換5次 //如果是length個元素,交換length/2次 for (int i = 0; i < letters.Length / 2; i++) { //將第i個元素儲存在臨時變數中 char temp = letters[i]; //將倒數第i個元素賦值給第i個位置 letters[i] = letters[letters.Length - 1 - i]; //將臨時變數中儲存的第i個元素賦值給倒數第i個位置 letters[letters.Length - 1 - i] = temp; } Console.WriteLine(); Console.WriteLine(); //遍歷列印 for (int i = 0; i < letters.Length; i++) { Console.Write(letters[i] + "\t"); }
字串拆分成一維陣列
1.字串名.split(分割字元);
string str = "abc,def,ghi,jkl,mn"; //以,字元分割字串, 得到的結果是字串型別的陣列,不能用字串分割 string[] array = str.Split(','); for (int i = 0; i < array.Length; i++) { Console.WriteLine(array[i]); }
2.拆分完得到的是一個字串型別的陣列