一:定義Collection類
在C#語言中定義一個Collection類最簡單的方法就是把System.Collection庫中的CollectionBase類作為基礎類。
二:實現Collection類
Collection類中包括了很多方法和屬性,這裡介紹一下Add方法、Remove方法、Count方法和Clear方法。
代碼如下
show sourceview sourceprint?01 public class collection : CollectionBase
02 {
03 public void Add(object item)
04 {
05 InnerList.Add(item); //添加
06 }
07 public void Remove(object item)
08 {
09 InnerList.Remove(item); //刪除
10 }
11 public int Count()
12 {
13 return InnerList.Count; //返回元素個數
14 }
15 public void Clear()
16 {
17 InnerList.Clear(); //全部清除
18 }
三:實例化一個類
本例實例化了兩個類,分別是submittedTexts(試卷存放的類)和outForChecking(試卷取出後存放的類)
代碼如下
show sourceview sourceprint?1 collection submittedTexts = new collection();
2 collection outForChecking = new collection();
四:例子
這是一個模擬試卷提交的一個程序。功能如下:(1)錄入某姓名和試卷編號,把試卷插入到submittedTexts集合中;
(2)錄入姓名,從submittedTexts中刪除相應試卷,並把試卷插入到outForChecking集合中;
(3)錄入姓名,從outForChecking中刪除試卷,並放回到submittedTexts中;
(4)按退出按鈕,從outForChecking中刪除所有試卷,並全部插入到submittedTexts中。
程序界面如下:
1、用get方法獲取textBox中的值
代碼如下
show sourceview sourceprint?01 public string Nametext
02 {
03 get
04 {
05 return textBox1.Text;
06 }
07 }
08 public string Numtext
09 {
10 get
11 {
12 return textBox2.Text;
13 }
2、各按鈕的功能實現
代碼如下
show sourceview sourceprint?01 提交試卷
02 int Numtext2 = int.Parse(Numtext);
03 submittedTexts.Add(Nametext);
04 MessageBox.Show("試卷已經提交");
05
06 取出試卷(用collection類中的Contains判斷元素是否在集合中)
07 if (submittedTexts.Contains(Nametext))
08 {
09 submittedTexts.Remove(Nametext);
10 outForChecking.Add(Nametext);
11 MessageBox.Show("試卷已經取出");
12 }
13 else
14 MessageBox.Show("沒有這份試卷");
15
16 試卷總數
17 label4.Text =submittedTexts.Count().ToString();
18
19 放回試卷
20 if (outForChecking.Contains(Nametext))
21 {
22 outForChecking.Remove(Nametext);
23 submittedTexts.Add(Nametext);
24 MessageBox.Show("試卷已經放回");
25 }
26 else
27 MessageBox.Show("沒有這份試卷");
28 }
29
30 全部清除
31 foreach (string item in outForChecking)
32 {
33 submittedTexts.Add(item);
34 }
35 outForChecking.Clear();
Collection類中的各種方法和屬性,請參考aspx">http://msdn.microsoft.com/zh-cn/library/ms132397.aspx