欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#數據結構之字符串(string)詳解

 更新時間:2025年04月02日 15:26:52   作者:To be better now  
這篇文章主要介紹了C#數據結構之字符串(string),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
  • 摘要:以具體例子詳解C#字符串的使用。
  • 編程語言:C#
  • 編程環(huán)境:Visual Studio 2019

字符串代表文字對象,表示把字符一個一個串起來,視為Char對象的按序只讀集合,使用非常廣泛。

轉義字符序列

在講字符串前,先說一下字符。不知道大家編程會不會注意到,在字符或者字符串里經常會有一些特殊的字符。

比如我們想定義一個字符,這個字符就是單引號,但直接把單引號輸進去又會提示錯誤,那是不是這樣的字符串不能被定義呢?那就太小看C#語言了。

對于一些跟語法沖突的字符或者具有特殊含義的字符,規(guī)定字符“\”為轉義字符,緊跟其后的一個字符要進行特殊處理,根據其后跟的字符來決定它的意義。常用轉義字符序列如下。

常用轉義字符序列
轉義字符序列字符名稱程序范例運行結果
\'單引號Write("C\'#");C'#
\"雙引號Write("C\"#");C"#
\n換行符Write("C\n#");

C

#

\tTab鍵(空格)Write("C\t#")C #
\r回車符(回到本行開始位置)Write("C\r#")#C
\\反斜杠Write("C\\#")C\#

字符串的創(chuàng)建

字符串的聲明

字符串的聲明很簡單,注意字符串賦值時要給字符串內容前后加上雙引號,聲明語法如下。

string str = "字符串的內容";

null字符串與空字符串

這里特別說明一下空字符串的創(chuàng)建與判斷,首先是空字符串的創(chuàng)建,方式有以下三種。

三種方式并非完全一樣,其中字符串為null時,若訪問其屬性,會導致異常,string.Empty和“”字符串表示空字符串,即長度為零的字符串。因此,字符串清空時常用string.Empty或“”,小編以前沒明白三者的關系,用null清空字符串,出了不少異常,吃了不少虧。

string strNull = null;//null字符串,若訪問其成員,會導致異常
string strEmpty = string.Empty;//空字符串,長度為零
string str = "";//空字符串,長度為零

了解了空字符串的創(chuàng)建,判斷起來就容易了,空字符串判斷有以下方式。

其中null只對應null字符串的判斷,空字符串string.Empty和“”可以互相等價,string.IsNullOrEmpty同時包括null字符串和空字符串的判斷 string.IsNullOrWhiteSpace同時包括null、空字符串和若干空白字符組成的字符串的判斷。

if (str == null)
{
    //僅在str=null時返回true
}
else if (str == "")
{
    //在str為空字符串時返回true
}
else if (str == string.Empty)
{
    //在str為空字符串時返回true
}
else if (string.IsNullOrEmpty(str))
{
    //在str=null或空字符串時返回true
}
else if (string.IsNullOrWhiteSpace(str))
{
    //在str=null、空字符串或若干空白字符組成的字符串時返回true
}

重復單字符字符串的構造

字符串string給出了其構造方法,構造函數如下,功能是構造由count個ch字符組成的字符串。

String(char ch, int count);//重復單字符組成的字符串構造

字符串的屬性和常用方法

屬性

  • Length:獲取(只讀)字符串的長度。
  • this[index]:獲?。ㄖ蛔x)指定索引位置index的字符。

常用方法

  • CompareTo(str):判斷當前字符串與str是否相等,若相等,返回值0。(注:判斷字符串相等還可以直接將要判斷的兩個字符串用邏輯等于符號“==”等起來)
  • ToUpper():將字符串所有字符轉換為大寫字符。
  • ToLower():將字符串所有字符轉換為小寫字符。
  • Insert(index,str):返回在索引位置index后插入字符串str后的字符串。
  • Remove(index,count):返回從索引位置index開始,刪除count個字符的字符串。
  • Replace(oldchar,newchar):返回以newchar字符替換字符串中所有oldchar字符的字符串。
  • Replace(oldstr,newstr):返回以newstr字符串替換字符串中所有包含oldstr字符串的字符串。

測試Replace方法,代碼如下。

string str1 = "She is a girl";
Console.WriteLine(str1.Replace("girl", "boy"));
Console.WriteLine(str1.Replace('i', 'E'));

運行結果。

  • Substring(index,count):返回截取從索引位置index開始,count個字符的字符串。
  • Substring(index):返回截取從索引位置index開始到最后的字符串。
  • Split(char):返回以字符char作為分割符分割出來的字符串組成的數組。(注:分割出來的字符串數組的元素不包括分割符char自己)

測試Split方法,代碼如下。

string str2 = "a,b,c,d";
string[] STR = str2.Split(',');
            
for(int i = 0; i < STR.Length; i++)
{
    Console.WriteLine(STR[i]);
}

運行結果。

  • IndexOf(char):返回從小到大匹配到的第一個字符char的索引號。
  • LastIndexOf(char):返回從大到小匹配到的第一個字符char的索引號。
  • StartsWith(str):匹配字符串開頭是否是str,是返回true,否返回false。
  • EndsWith(str):匹配字符串末尾是否是str,是返回true,否返回false。

總結

本文首先講解了轉義字符序列,即如何輸入沖突字符和表示特殊意義的字符;其次是字符串的創(chuàng)建,包括聲明,空字符串與null字符串的創(chuàng)建與判斷的區(qū)別和重復字符的字符串構造;最后從字符串的屬性和方法詳解了字符串的功能。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

最新評論