C#基礎拾漏(4)

來源:互聯網
上載者:User

標籤:style   blog   color   使用   資料   art   

字串:
  可以看做一個字元數組
  堆裡面有一個字串拘留池,建立一個字串時,首先會在拘留池中找有沒有相同的字串,如果有,直接使變數指向拘留池中的字串。沒有才會再拘留池中建立。給你字串變數重新賦值時,是一個重新尋找拘  留池和建立的過程,不會修改原來建立的字串
  字串對象一旦建立,不會被GC回收
字串函數:
  string.Conmpare():比較兩個字串第一個不同字元的大小
  Concat():串連多個字串
  Contains():判斷指定的串裡面是否包含指定的子串
  StartWith()/EndsWith():判斷指定的字元是否以指定的子串開始/結尾
  string.Format()格式化字串,與Console.WriteLine()預留位置用法類似。
  IndexOf():尋找指定子串在字串中的索引
  LastIndexOf():從字串的結尾往前查第一次出現匹配的索引
  Insert():在指定的索引位置插入指定的字串
  string.IsNullOrEmpty():判斷字串是否null或string.Empty
  Remove():刪除指定索引開始,指定長度的子串,不指定刪除到結尾
  Replace():把舊子串替換成新子串
  Split():按指定字元(串)分割字串,可傳多個字元,返回字串數組
  Substring():指定索引開始,截取指定長度的子串
  ToCharArray():轉換成字元數組
  ToLower():轉換成小寫
  ToUpper():轉換成大寫
  Trim():去掉前後空格或指定字元
索引器:
  文法:public int this[int index]{get{return 0;}set{}}
ArrayList:
  內部儲存資料的是一個object數組
  Add方法返回的是加進去元素所在的索引
  Remove方法,刪除指定的對象,刪除第一個
  Clear方法,清空數組之後,object數組長度不變
  可以通過建構函式建立指定長度的ArrayList,這個長度是object數組的初始長度,不是對象的Count屬性是object數組裡元素的個數,所以沒有通過Add方法添加元素之前,不能使用索引訪問
foreach:
  內部原理:

ArrayList list = new ArrayList();IEnumerator t = list.GetEnumerator();while(t.MoveNext()){    Console.WriteLine(t.Current);}    

  GetEnumerator方法來自IEnumerable介面,ArrayList類實現了IEnumerable介面。

  GetEnumerator方法返回IEnumerator類型,所以要有一個實現IEnumerator介面的類
IEnumerator介面
  其中有Current屬性,MoveNext方法,Reset方法
  Current返回當前指標指向的元素的值
  MoveNext:將指標向前移動1位,並判斷當前位有沒有元素,返回bool
  Reset:將指標重新指向0
  實現IEnumerator介面:

 1 private int count; 2 private int index = -1; 3 private object[] objs; 4 public MyEnumerator(object[] objs, int count) 5 { 6   this.objs = objs; 7   this.count = count; 8 } 9 public object Current10 {11   get{return objs[index];}12 }13 public bool MoveNext()14 {15   return ++index<this.count;16 }17 public void Reset()18 {19   index = -1;20 }

  有了實現IEnumerator介面的類,就可以在GetEnumerator方法中建立一個類的對象返回

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.