Latest web development tutorials

C # String (String)

W języku C #, można użyć tablicę znaków do reprezentowania ciągów, ale bardziej powszechną praktyką jest użycie słowa kluczowegociąg zadeklarować zmienną string.Hasło ciąg jest aliasem dla klasysystem.string.

Tworzenie obiektów typu String

Można użyć jednej z następujących metod, aby utworzyć obiekty ciągów:

  • Dzięki zmiennej String określić ciąg
  • Za pomocą konstruktora klasy String
  • Za pomocą operatora konkatenacji (+)
  • Pobierając właściwość lub wywołać metodę, która zwraca ciąg
  • Metodą formatowania przekonwertować wartość lub obiekt, do jej ciąg znaków

Poniższy przykład ilustruje ten punkt:

using System;

nazw StringApplication
{
    Program klasy
    {
        static void Main (string [] args)
        {
           // String, string konkatenacji ciąg fname lname;
            fname = "Rowan";
            lname = "Atkinson";

            Ciąg fullname = fname + lname;
            Console.WriteLine ( "Imię i nazwisko: {0}", FULLNAME);

            // Za pomocą konstruktora char string [] letters = { 'H', 'e', ​​'l', 'l', 'o'};
            smyczkowe pozdrowienia = new String (litery);
            Console.WriteLine ( "Pozdrowienia: {0}", pozdrowienia);

            // Metoda zwraca łańcuch string [] = {sarray "Hello", "Z", "Poradniki", "punkt"};
            Komunikat ciąg = string.join ( "", sarray);
            Console.WriteLine ( "Message: {0}", komunikat);

            // Metoda formatowania transformacji wartości DateTime oczekiwania = new DateTime (2012, 10, 10, 17, 58, 1);
            Ciąg czatu = String.Format ( "Wiadomość wysłana na {0: t} na {0}": D, 
            oczekiwania);
            Console.WriteLine ( "Message: {0}", czat);
            Console.ReadKey ();
        }
    }
}

Gdy powyższy kod jest kompilowany i wykonany, że daje następujące wyniki:

Imię i nazwisko: Rowan Atkinson
Pozdrowienia: hello
Wiadomość: Witam Od Punktu Samouczki
Wiadomość wysłana na 17:58 w środę, 10 października 2012

Klasa właściwości String

Klasa String posiada dwa następujące właściwości:

序号属性名称 & 描述
1Chars
在当前String对象中获取Char对象的指定位置。
2Length
在当前的String对象中获取字符数。

Metody klasy String

Klasa String posiada wiele metod obiektu String operacyjnego. W poniższej tabeli przedstawiono niektóre z najczęstszych metod:

序号方法名称 & 描述
1public static int Compare( string strA, string strB )
比较两个指定的 string 对象,并返回一个表示它们在排列顺序中相对位置的整数。该方法区分大小写。
2public static int Compare( string strA, string strB, bool ignoreCase )
比较两个指定的 string 对象,并返回一个表示它们在排列顺序中相对位置的整数。但是,如果布尔参数为真时,该方法不区分大小写。
3public static string Concat( string str0, string str1 )
连接两个 string 对象。
4public static string Concat( string str0, string str1, string str2 )
连接三个 string 对象。
5public static string Concat( string str0, string str1, string str2, string str3 )
连接四个 string 对象。
6public bool Contains( string value )
返回一个表示指定 string 对象是否出现在字符串中的值。
7public static string Copy( string str )
创建一个与指定字符串具有相同值的新的 String 对象。
8public void CopyTo( int sourceIndex, char[] destination, int destinationIndex, int count )
从 string 对象的指定位置开始复制指定数量的字符到 Unicode 字符数组中的指定位置。
9public bool EndsWith( string value )
判断 string 对象的结尾是否匹配指定的字符串。
10public bool Equals( string value )
判断当前的 string 对象是否与指定的 string 对象具有相同的值。
11public static bool Equals( string a, string b )
判断两个指定的 string 对象是否具有相同的值。
12public static string Format( string format, Object arg0 )
把指定字符串中一个或多个格式项替换为指定对象的字符串表示形式。
13public int IndexOf( char value )
返回指定 Unicode 字符在当前字符串中第一次出现的索引,索引从 0 开始。
14public int IndexOf( string value )
返回指定字符串在该实例中第一次出现的索引,索引从 0 开始。
15public int IndexOf( char value, int startIndex )
返回指定 Unicode 字符从该字符串中指定字符位置开始搜索第一次出现的索引,索引从 0 开始。
16public int IndexOf( string value, int startIndex )
返回指定字符串从该实例中指定字符位置开始搜索第一次出现的索引,索引从 0 开始。
17public int IndexOfAny( char[] anyOf )
返回某一个指定的 Unicode 字符数组中任意字符在该实例中第一次出现的索引,索引从 0 开始。
18public int IndexOfAny( char[] anyOf, int startIndex )
返回某一个指定的 Unicode 字符数组中任意字符从该实例中指定字符位置开始搜索第一次出现的索引,索引从 0 开始。
19public string Insert( int startIndex, string value )
返回一个新的字符串,其中,指定的字符串被插入在当前 string 对象的指定索引位置。
20public static bool IsNullOrEmpty( string value )
指示指定的字符串是否为 null 或者是否为一个空的字符串。
21public static string Join( string separator, params string[] value )
连接一个字符串数组中的所有元素,使用指定的分隔符分隔每个元素。
22public static string Join( string separator, string[] value, int startIndex, int count )
连接接一个字符串数组中的指定位置开始的指定元素,使用指定的分隔符分隔每个元素。
23public int LastIndexOf( char value )
返回指定 Unicode 字符在当前 string 对象中最后一次出现的索引位置,索引从 0 开始。
24public int LastIndexOf( string value )
返回指定字符串在当前 string 对象中最后一次出现的索引位置,索引从 0 开始。
25public string Remove( int startIndex )
移除当前实例中的所有字符,从指定位置开始,一直到最后一个位置为止,并返回字符串。
26public string Remove( int startIndex, int count )
从当前字符串的指定位置开始移除指定数量的字符,并返回字符串。
27public string Replace( char oldChar, char newChar )
把当前 string 对象中,所有指定的 Unicode 字符替换为另一个指定的 Unicode 字符,并返回新的字符串。
28public string Replace( string oldValue, string newValue )
把当前 string 对象中,所有指定的字符串替换为另一个指定的字符串,并返回新的字符串。
29public string[] Split( params char[] separator )
返回一个字符串数组,包含当前的 string 对象中的子字符串,子字符串是使用指定的 Unicode 字符数组中的元素进行分隔的。
30public string[] Split( char[] separator, int count )
返回一个字符串数组,包含当前的 string 对象中的子字符串,子字符串是使用指定的 Unicode 字符数组中的元素进行分隔的。int 参数指定要返回的子字符串的最大数目。
31public bool StartsWith( string value )
判断字符串实例的开头是否匹配指定的字符串。
32public char[] ToCharArray()
返回一个带有当前 string 对象中所有字符的 Unicode 字符数组。
33public char[] ToCharArray( int startIndex, int length )
返回一个带有当前 string 对象中所有字符的 Unicode 字符数组,从指定的索引开始,直到指定的长度为止。
34public string ToLower()
把字符串转换为小写并返回。
35public string ToUpper()
把字符串转换为大写并返回。
36public string Trim()
移除当前 String 对象中的所有前导空白字符和后置空白字符。

Metoda powyższa lista nie jest wyczerpująca, prosimy odwiedzić Bibliotekę MSDN Pełną listę metod i konstruktora klasy String.

Przykłady

Poniższy przykład ilustruje niektóre z metod wymienionych powyżej:

Porównaj ciągi

using System;

nazw StringApplication
{
   Klasa StringProg
   {
      static void Main (string [] args)
      {
         Ciąg str1 = "To jest test";
         Ciąg słowo2 = "To jest tekst";

         if (String.Compare (str1, str2) == 0)
         {
            Console.WriteLine (str1 + "i" + słowo2 + "są równe.");
         }
         więcej
         {
            Console.WriteLine (str1 + "i" + słowo2 + "nie są równe.");
         }
         Console.ReadKey ();
      }
   }
}

Gdy powyższy kod jest kompilowany i wykonany, że daje następujące wyniki:

To jest test i jest to tekst nie są równe.

String zawiera ciąg znaków:

using System;

nazw StringApplication
{
   Klasa StringProg
   {
      static void Main (string [] args)
      {
         Ciąg str = "To jest test";
         if (str.Contains ( "test"))
         {
            Console.WriteLine ( "został znaleziony Sekwencja 'test'.");
         }
         Console.ReadKey ();
      }
   }
}

Gdy powyższy kod jest kompilowany i wykonany, że daje następujące wyniki:

Sekwencja "test" został znaleziony.

Uzyskaj podciąg:

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() ; 
		} 
	} 
}

Uruchomienie instancji »

Gdy powyższy kod jest kompilowany i wykonany, że daje następujące wyniki:

Ostatniej nocy śniłam o San Pedro
San Pedro

Ciąg połączenia:

using System;

nazw StringApplication
{
   Klasa StringProg
   {
      static void Main (string [] args)
      {
         string [] starray = new string [] { "Precz drodze noce są ciemne"
         "A słońce świeci codziennie na szczycie góry"
         "Wziąłem podróż na żaglowcu"
         "A kiedy dotarłem na Jamajce"
         "Zrobiłem stop"};

         string str = string.join ( "\ n", starray);
         Console.WriteLine (str);
         Console.ReadKey ();
      }
   }
}

Gdy powyższy kod jest kompilowany i wykonany, że daje następujące wyniki:

Dół drodze noce są ciemne
A słońce świeci codziennie na szczycie góry
Wziąłem podróż na żaglowcu
A kiedy dotarłem na Jamajce
Zrobiłem przystanek