導讀:本文詳細介紹了字符串類中常見函數的使用方法。
在C#語言中,string 類型是引用類型,其表示零或更多個Unicode 字符組成的序列。string 是 .NET Framework 中 String 的別名。其定義方法如下:
string s1="";//這是一個空字符串
string s2="hello,everyone!"; //非空字符串
可以使用"+"把兩個字符串連接起來。如:
string s3="中國"+" 北京";
則s3存儲的內容為:
中國 北京
如果,我們想得到字符串中的每個字符,可以像操作數組那樣草作字符串,如下例,將輸出每個字符的ASCII碼值:
using System;
class class1
{
static void Main()
{
string sArr="Student";
ushort ascii;
for(int i=0;i<sArr.Length;i++)
{
ascii = sArr[i];
Console.WriteLine("字符{0}的ASCII碼為:{1}",sArr[i],ascii);
}
}
}
其輸出結果為:
在這個程序中,我們用到了字符串對象的一個屬性Length,它的作用是保存字符串的長度,即字符串中字符的個數(當然包括空ge在內的其他所有字符在內),它也是字符串對象的惟一一個屬性。同時,字符串對象還有自己的一些方法,常用的方法有下面幾個:
(1)Trim(),該方法把字符串兩端的空ge去掉,如:
string str1 = " I am a student! ";
string str2 = str1.Trim();
則str2種的內容為:"I am a student!",而其開始位置和最后位置的空ge已經沒有了,字符串中的空ge仍在。str1中的內容不會受影響。
(2)ToUpper(),該方法把字符串中的所有小寫字符變成大寫。如:
string s1 = "Student";
string s2 = s1.ToUpper();
則,s2="STUDENT",s1中的內容不受影響。
(3)ToLower(),該方法把字符串中的所有大寫字符轉變為小寫。如:
string s1 = "StuDent";
string s2 = s1.ToLower();
則,s2 = "student",而s1中的內容不受影響。
(4)SubString()方法,該方法返回一個子串,使用方法如下:
string s="Student";
string s1 = s.SubString(1,2), s2 = s.SubString(2);
則s1="tu",而s2="udent"。SubString(開始位置,子串長度),其指定從原字符串的第幾個字符開始返回子串,字串包含幾個字符。如s1=s.SubString(1,2),指定從第二個字符開始返回,截取的子串長度為2。注意:其下標是從零開始的。所以第一個參數"1"實際上是第二個字符。SubString(開始位置)是從開始位置截取到原字符串的最后,所以s2="udent"。
(5)Replace(string oldValue,string newValue)和Replace(char oldChar,char newChar)
該方法是用指定的字符串newValue替換字符串中的oldValue字符串,或使用字符newChar替換里面oldChar字符。如:
string s = "ha,I'm a student from Qiqihar";
string s1 = s.Replace("ha","HA");
string s2 = s.Replace('a','D');
則s1="HA,I'm a student from QiqiHAr",s2="hD,I'm D student from QiqihDr"。
(6)IndexOf(),返回子串的位置。如:
string s = "Studentssdfdent";
int id1 = s.IndexOf("den");
int id2 = s.IndexOf("den",7);
int id3 = s.IndexOf("den",7,3);
則id1=3,即有多個匹配時,只返回第一個遇到的子串位置;
id2=11,返回的第二個字串的位置,7是指定的搜索開始位置;
id3=-1,代表沒有找到匹配的子串,它搜索的范圍是7~7+3 -1,即7~9,在此范圍內,沒有滿足條件的子串。
(7)Equals()判斷兩個字符串(或對象)是否相等(相同),如:
string s="student",s1="Student",s2="student";
Console.WriteLine(s.Equals(s1));
Console.WriteLine(s.Equals(s2));
則輸出:False
True
盡管 string 是引用類型,我們仍可以使用運算符(== 和 !=)來進行比較兩個字符串是否相等,如上面的例子可以使用如下的輸出:
Console.WriteLine(s==s1);
Console.WriteLine(s==s2);
輸出結果是一樣的。而使用這種方法,顯得更直觀,易理解。
新聞熱點
疑難解答