C# String
In C#, you can use a character array to represent a string, but it is more common to use the string keyword to declare a string variable. The string keyword is an alias for the System.String class.
Creating a String Object
You can create a string object using one of the following methods:
By assigning a string to the String variable
By using String class constructor
Convert a string by using the string concatenation operator ( + )
By retrieving properties or calling a method that returns a string
By formatting methods The value or object is its string representation
The following example demonstrates this:
using System; namespace StringApplication { class Program { static void Main(string[] args) { //字符串,字符串连接 string fname, lname; fname = "Rowan"; lname = "Atkinson"; string fullname = fname + lname; Console.WriteLine("Full Name: {0}", fullname); //通过使用 string 构造函数 char[] letters = { 'H', 'e', 'l', 'l','o' }; string greetings = new string(letters); Console.WriteLine("Greetings: {0}", greetings); //方法返回字符串 string[] sarray = { "Hello", "From", "Tutorials", "Point" }; string message = String.Join(" ", sarray); Console.WriteLine("Message: {0}", message); //用于转化值的格式化方法 DateTime waiting = new DateTime(2012, 10, 10, 17, 58, 1); string chat = String.Format("Message sent at {0:t} on {0:D}", waiting); Console.WriteLine("Message: {0}", chat); Console.ReadKey() ; } } }
When the above code is compiled and executed, it produces the following results:
Attributes ofFull Name: Rowan Atkinson Greetings: Hello Message: Hello From Tutorials Point Message: Message sent at 5:58 PM on Wednesday, October 10, 2012
String class
String class has the following two attributes:
serial number
attribute name& description
1 Chars
Get the specified position of the Char object in the current String object.
2 Length
Get the number of characters in the current String object. Methods of the
String class The
String class has many methods for operating on string objects. The following table provides some of the most commonly used methods:
Serial number
Method name & Description
1 public static int Compare(string strA, string strB)
Compares two specified string objects and returns an integer representing their relative position in the sorting order. This method is case-sensitive.
2 public static int Compare( string strA, string strB, bool ignoreCase)
Compares two specified string objects and returns an integer representing their relative position in the sorting order. However, if the boolean argument is true, the method is not case sensitive.
3 public static string Concat(string str0, string str1)
Connect two string objects.
4 public static string Concat(string str0, string str1, string str2)
Concatenate three string objects.
5 public static string Concat( string str0, string str1, string str2, string str3)
Concatenate four string objects.
6 public bool Contains( string value)
Returns a value indicating whether the specified string object appears in the string.
7 public static string Copy( string str )
Create a new String object with the same value as the specified string.
8 public void CopyTo( int sourceIndex, char[] destination, int destinationIndex, int count )
Copy the specified number of characters starting from the specified position of the string object to the specified position in the Unicode character array.
9 public bool EndsWith( string value)
Determine whether the end of the string object matches the specified string.
10 public bool Equals( string value)
Determine whether the current string object has the same value as the specified string object.
11 public static bool Equals( string a, string b )
Determine whether two specified string objects have the same value.
12 public static string Format(string format, Object arg0)
Replace one or more format items in the specified string with the string representation of the specified object.
13 public int IndexOf( char value )
Returns the index of the first occurrence of the specified Unicode character in the current string. The index starts from 0.
14 public int IndexOf( string value )
Returns the index of the first occurrence of the specified string in this instance. The index starts from 0.
15 public int IndexOf(char value, int startIndex)
Returns the index of the first occurrence of the specified Unicode character starting from the specified character position in the string. The index starts from 0.
16 public int IndexOf(string value, int startIndex)
Returns the index of the first occurrence of the specified string starting from the specified character position in this instance, and the index starts from 0.
17 public int IndexOfAny( char[] anyOf )
返回某一个指定的 Unicode 字符数组中任意字符在该实例中第一次出现的索引,索引从 0 开始。
18 public int IndexOfAny( char[] anyOf, int startIndex )
返回某一个指定的 Unicode 字符数组中任意字符从该实例中指定字符位置开始搜索第一次出现的索引,索引从 0 开始。
19 public string Insert( int startIndex, string value )
返回一个新的字符串,其中,指定的字符串被插入在当前 string 对象的指定索引位置。
20 public static bool IsNullOrEmpty( string value )
指示指定的字符串是否为 null 或者是否为一个空的字符串。
21 public static string Join( string separator, params string[] value )
连接一个字符串数组中的所有元素,使用指定的分隔符分隔每个元素。
22 public static string Join( string separator, string[] value, int startIndex, int count )
链接一个字符串数组中的指定元素,使用指定的分隔符分隔每个元素。
23 public int LastIndexOf( char value )
返回指定 Unicode 字符在当前 string 对象中最后一次出现的索引位置,索引从 0 开始。
24 public int LastIndexOf( string value )
返回指定字符串在当前 string 对象中最后一次出现的索引位置,索引从 0 开始。
25 public string Remove( int startIndex )
移除当前实例中的所有字符,从指定位置开始,一直到最后一个位置为止,并返回字符串。
26 public string Remove( int startIndex, int count )
从当前字符串的指定位置开始移除指定数量的字符,并返回字符串。
27 public string Replace( char oldChar, char newChar )
把当前 string 对象中,所有指定的 Unicode 字符替换为另一个指定的 Unicode 字符,并返回新的字符串。
28 public string Replace( string oldValue, string newValue )
把当前 string 对象中,所有指定的字符串替换为另一个指定的字符串,并返回新的字符串。
29 public string[] Split( params char[] separator )
返回一个字符串数组,包含当前的 string 对象中的子字符串,子字符串是使用指定的 Unicode 字符数组中的元素进行分隔的。
30 public string[] Split( char[] separator, int count )
返回一个字符串数组,包含当前的 string 对象中的子字符串,子字符串是使用指定的 Unicode 字符数组中的元素进行分隔的。int 参数指定要返回的子字符串的最大数目。
31 public bool StartsWith( string value )
判断字符串实例的开头是否匹配指定的字符串。
32 public char[] ToCharArray()
返回一个带有当前 string 对象中所有字符的 Unicode 字符数组。
33 public char[] ToCharArray( int startIndex, int length )
返回一个带有当前 string 对象中所有字符的 Unicode 字符数组,从指定的索引开始,直到指定的长度为止。
34 public string ToLower()
把字符串转换为小写并返回。
35 public string ToUpper()
把字符串转换为大写并返回。
36 public string Trim()
移除当前 String 对象中的所有前导空白字符和后置空白字符。
上面的方法列表并不详尽,请访问 MSDN 库,查看完整的方法列表和 String 类构造函数。
实例
下面的实例演示了上面提到的一些方法:
比较字符串
using System; namespace StringApplication { class StringProg { static void Main(string[] args) { string str1 = "This is test"; string str2 = "This is text"; if (String.Compare(str1, str2) == 0) { Console.WriteLine(str1 + " and " + str2 + " are equal."); } else { Console.WriteLine(str1 + " and " + str2 + " are not equal."); } Console.ReadKey() ; } } }
当上面的代码被编译和执行时,它会产生下列结果:
This is test and This is text are not equal.
字符串包含字符串:
using System; namespace StringApplication { class StringProg { static void Main(string[] args) { string str = "This is test"; if (str.Contains("test")) { Console.WriteLine("The sequence 'test' was found."); } Console.ReadKey() ; } } }
当上面的代码被编译和执行时,它会产生下列结果:
The sequence 'test' was found.
获取子字符串:
using System; namespace StringApplication { class StringProg { static void Main(string[] args) { string str = "Last night I dreamt of San Pedro"; Console.WriteLine(str); string substr = str.Substring(23); Console.WriteLine(substr); } Console.ReadKey() ; } }
当上面的代码被编译和执行时,它会产生下列结果:
San Pedro
连接字符串:
using System; namespace StringApplication { class StringProg { static void Main(string[] args) { string[] starray = new string[]{"Down the way nights are dark", "And the sun shines daily on the mountain top", "I took a trip on a sailing ship", "And when I reached Jamaica", "I made a stop"}; string str = String.Join("\n", starray); Console.WriteLine(str); } Console.ReadKey() ; } }
当上面的代码被编译和执行时,它会产生下列结果:
Down the way nights are dark And the sun shines daily on the mountain top I took a trip on a sailing ship And when I reached Jamaica I made a stop
以上就是【c#教程】C# 字符串(String)的内容,更多相关内容请关注PHP中文网(www.php.cn)!