C#string常用函數總結

來源:互聯網
上載者:User

標籤:

補充:

            1:在C語言裡 char佔1個位元組 而在C#,Java裡char佔兩個位元組 資料庫裡char 中漢佔兩個位元組 字母數字佔一個字

            2:string是c#中的類,String是.net Framework的類 string是關鍵字,也就是說string不能作為類、結構、枚舉、欄位、變數、方法、屬性的名稱,而String可以

一:  string是 參考型別

但是當一個string類型的參數賦值給另一個參數時,只給了值,而不是地址,因為它保留在堆上,而不是堆棧上

namespace Stringop{    class Program    {        static void Main(string[] args)        {            string str1 = "lipeng";            string str2 = str1;            Console.WriteLine("str1=" + str1);            Console.WriteLine("str2=" + str2);            str1 = "newlipeng";            Console.WriteLine("str1=" + str1);            Console.WriteLine("str2=" + str2);        }    }}
二:常用函數1.all
//all函數               //確定序列中的所有元素是否滿足條件。            bool isSure = str1.All(p => p > ‘b‘);            Console.WriteLine(isSure);
2.CompareTo
//CompareTo              //返回一個值,該值指示指定的 System.String 對象是否出現在此字串中。            // 一個 32 位有符號整數,該整數指示此執行個體在排序次序中是位於 value 參數之前、之後還是與其出現在同一位置。值條件小於零此執行個體位於 str2            //     之前。零此執行個體在排序次序中的位置與 str2 相同。大於零此執行個體位於 str2 之後。- 或 -str2 為 null。            str2 = "newlipenaa";            int lp = str1.CompareTo(str2);            Console.WriteLine(lp);
3.Contains
//Contains             //返回一個值,該值指示指定的 System.String 對象是否出現在此字串中。            bool isContain = str1.Contains("a");            Console.WriteLine(isContain);
4.Count
//Count            //返回一個數字,表示在指定的序列中滿足條件的元素數量。            int count = str1.Count(p => p == ‘e‘ || p == ‘l‘);            Console.WriteLine(count);
5.IndexOf
//IndexOf             //報告指定 Unicode 字元在此字串中的第一個匹配項的索引。            int index = str1.IndexOf(‘a‘);            Console.WriteLine(index);            string strs = str1.Substring(1, 3);            Console.WriteLine(strs);
6.Split
//Split              //返回的字串數組包含此執行個體中的子字串(由指定 Unicode 字元數組的元素分隔)。            string[] lsStr = str1.Split(new char[] { ‘,‘, ‘e‘ });            foreach (string a in lsStr)            {                Console.WriteLine(a);            }
7.Trim 和TrimEnd
//Trim                 //從當前 System.String 對象移除所有前置空白字元和尾部空白字元。            //TrimEnd                 //從當前 System.String 對象移除數組中指定的一組字元的所有尾部匹配項。            string strspace = "   aaa  s";            Console.WriteLine(strspace);            Console.WriteLine(strspace.Trim());            Console.WriteLine(strspace.TrimEnd(‘s‘));
8.PadLeft
//PadLeft             //返回一個新字串,該字串通過在此執行個體中的字元左側填充指定的 Unicode 字元來達到指定的總長度,從而使這些字元靠右對齊。            string padstr = str1.PadLeft(20, ‘a‘);            Console.WriteLine(padstr);
9.Replace
//Replace                 //返回一個新字串,其中此執行個體中出現的所有指定 Unicode 字元都替換為另一個指定的 Unicode 字元。            string replacestr = str1.Replace(‘a‘, ‘h‘);            Console.WriteLine(replacestr);
10.Equals
//Equals                //確定此執行個體是否與另一個指定的 System.String 對象具有相同的值。            bool isequal = str1.Equals(replacestr);            Console.WriteLine(isequal);
11.ToUpper
           //ToUpper              //返回此字串轉換為大寫形式的副本。            string upstr1 = str1.ToUpper();           Console.WriteLine(upstr1);
 
三:可變字串StringBuilder

      StringBuilder建立的對象可操作性更強:

       經常改變內容的字串最好不要用 String ,因為每次產生對象都會對系統效能產生影響,特別當記憶體中無引用對象多了以後, 那速度是一定會相當慢的。而如果是使用 StringBuffer 類則結果就不一樣了,每次結果都會對 StringBuilder對象本身進行操作,而不是產生新的對象,再改變對象引用。所以在一般情況下推薦使用 StringBuilder,特別是字串對象經常改變的情況下。

           簡單例子

             StringBuilder sber = new StringBuilder();            //最加字串  ouput:  lipeng,aaa,bbb            sber.Append("lipeng,aaa,bbb");            Console.WriteLine(sber);            //移除li  ouput:  peng,aaa,bbb            sber.Remove(0, 2);            Console.WriteLine(sber);            //擷取長度   ouput:12            int sberlength = sber.Length;            Console.WriteLine(sberlength);            //轉化為string類型時就具有了string類型的方法             string lps = sber.ToString().Trim();
四:其他知識點

string類型的count和length結果是一樣的 是string中char類型的個數  而string數組只能用一個計數器來記錄個數 

C#string常用函數總結

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.