一、深入C#數據類型
值類型傳遞和引用類型傳遞
方法的參數是值類型和引用類型
注意:值傳遞和引用傳遞判定依據是有沒有ref
01.如果方法的參數類型本身就是引用類型,那么對參數值的修改會永久保存
例如:public void TP(SE se)
{
se.Count++;//真正的修改se對象的Count值
}
02.如果方法的參數類型本身是值類型,又沒有ref修飾,那么對參數值的修改,不會永久保存()
03.如果方法的參數類型本身是值類型,但是有ref修飾,那么對象參數值的修改,也會永久保存。
值類型傳遞 :不帶ref的參數傳遞
引用類型傳遞:帶ref的參數傳遞
實例(經理評分)效果圖如下:
關鍵代碼如下:
二、使用集合組織相關數據
1、集合概念引入
集合:某些指定的對象集在一起就是集合
如下是一個Hello Kitty的集合
數組:可以存儲相同數據類型的一堆數據的容器
三、集合中元素操作(添加,遍歷,刪除、常見錯誤)
3.常見屬性:
Capacity:集合占用空間
Count:集合存儲元素個數
4.常用方法:
添加:int Add(Object value) //添加一個對象到集合的末尾
遍歷:通過foreach遍歷
刪除:Remove()、RemoveAt()和Clear()
*:注意事項:如果刪除了集合中的某一個元素,那么集合的索引會自動維護
Remove():刪除內容
RemoveAt():通過索引刪除
Clear():一次性移除集合中所有的元素
Contains():是否包含某個元素
5、集合初始化器
ArrayList engineers = new ArrayList()
{
new SE(){Name = "周星星",Age = 26,
Gender = Gender.male,ID = "000",Popularity = 10},
new SE(){Name = "王賤賤",Age = 22,
Gender = Gender.female,ID = "111",Popularity = 20},
new SE(){Name = "周姐姐",Age = 30,
Gender = Gender.male,ID = "222",Popularity = 20}
};
6、HashTable
Hashtable 通常稱為哈希表
根據鍵(Key)可以查找到相應的值 (Value)
★1.HashTable注意事項
01.HashTable類型的集合只能用foreach循環遍歷
02.HashTable集合中元素時無序的(不會按照Add的順序來展示元素內容)
03.HashTable中的key不能重復
04HashTabel沒有RemoveAt()
★2.對HashTable遍歷三種方案:
☆:第一種方式,遍歷所有的keys,通過key的值獲取value
☆:第二種方式:遍歷所有的value集合
☆:第三種方式,同時遍歷key和value
Eg:
foreach (DictionaryEntry item in table)
{
Console.WriteLine(item.Key + "value==" + item.Value);
}
7、泛型集合List<T>
泛型:就是為了約束ArrayList中元素類型,而制定的一個新的集合類型,該類型只能加入同一類型的多個元素,標識符<T>,可以看成是一個占位符,泛型是將運行時錯誤提前到了編譯時
8、泛型集合Dictionary<K,V>
Dictionary<string,Person> dic=new Dictionary<string, Person>();
實例(員工簽到)效果圖如下:
關鍵代碼如下:
知識小結項目(如圖):
關鍵代碼如下: