Heim  >  Artikel  >  Backend-Entwicklung  >  [C#-Tutorial] C#-String (String)

[C#-Tutorial] C#-String (String)

黄舟
黄舟Original
2016-12-26 14:31:351321Durchsuche

C#-Zeichenfolge (String)

In C# können Sie ein Zeichenarray verwenden, um eine Zeichenfolge darzustellen. Der gängigere Ansatz besteht jedoch darin, das Schlüsselwort „string“ zu verwenden, um eine Zeichenfolgenvariable zu deklarieren. Das Schlüsselwort string ist ein Alias ​​für die Klasse System.String.

Erstellen eines String-Objekts

Sie können ein String-Objekt mit einer der folgenden Methoden erstellen:

Durch Zuweisen einer Zeichenfolge zur String-Variablen

By Verwenden des String-Klassenkonstruktors

Konvertiert eine Zeichenfolge mithilfe des Zeichenfolgenverkettungsoperators ( + )

Durch Abrufen von Eigenschaften oder Aufrufen einer Methode, die eine Zeichenfolge zurückgibt

Konvertiert eine Formatierungsmethode durch Ein Wert oder Objekt ist seine Zeichenfolgendarstellung

Das folgende Beispiel zeigt dies:

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

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt er die folgenden Ergebnisse:

Full Name: Rowan Atkinson
Greetings: Hello
Message: Hello From Tutorials Point
Message: Message sent at 5:58 PM on Wednesday, October 10, 2012

Attribute der String-Klasse

String-Klasse hat die folgenden zwei Attribute:

Seriennummer

Attributname und Beschreibung

1 Chars
Ruft die angegebene Position des Char-Objekts im aktuellen String-Objekt ab.

2 Länge
Ermitteln Sie die Anzahl der Zeichen im aktuellen String-Objekt. Methoden der

String-Klasse

Die String-Klasse verfügt über viele Methoden zum Betreiben von String-Objekten. Die folgende Tabelle enthält einige der am häufigsten verwendeten Methoden:

Seriennummer

Methodenname und -beschreibung

1 öffentlich static int Compare( string strA, string strB)
Vergleicht zwei angegebene String-Objekte und gibt eine Ganzzahl zurück, die ihre relative Position in der Sortierreihenfolge darstellt. Bei dieser Methode wird die Groß-/Kleinschreibung beachtet.

2 public static int Compare( string strA, string strB, boolignoreCase)
Vergleicht zwei angegebene String-Objekte und gibt eine Ganzzahl zurück, die ihre relative Position in der Sortierreihenfolge darstellt. Wenn das boolesche Argument jedoch wahr ist, unterscheidet die Methode nicht zwischen Groß- und Kleinschreibung.

3 öffentlicher statischer String Concat( string str0, string str1)
Verkettet zwei String-Objekte.

4 öffentliche statische Zeichenfolge Concat( string str0, string str1, string str2)
Verketten Sie drei Zeichenfolgenobjekte.

5 öffentliche statische Zeichenfolge Concat( string str0, string str1, string str2, string str3)
Verketten Sie vier String-Objekte.

6 public bool Enthält( Zeichenfolgenwert)
Gibt einen Wert zurück, der angibt, ob das angegebene Zeichenfolgenobjekt in der Zeichenfolge vorkommt.

7 public static string Copy( string str )
Erstellt ein neues String-Objekt mit demselben Wert wie der angegebene String.

8 public void CopyTo( int sourceIndex, char[]Ziel, int DestinationIndex, int count)
Kopieren Sie die angegebene Anzahl von Zeichen beginnend von der angegebenen Position des Zeichenfolgenobjekts an die angegebene Position im Unicode Zeichenarray.

9 public bool EndsWith( string value)
Bestimmen Sie, ob das Ende des String-Objekts mit dem angegebenen String übereinstimmt.

10 public bool Equals( string value)
Bestimmen Sie, ob das aktuelle String-Objekt denselben Wert wie das angegebene String-Objekt hat.

11 public static bool Equals( string a, string b)
Bestimmen Sie, ob zwei angegebene String-Objekte denselben Wert haben.

12 öffentliche statische Zeichenfolge Format( Zeichenfolgenformat, Objekt arg0 )
Ersetzen Sie ein oder mehrere Formatelemente in der angegebenen Zeichenfolge durch die Zeichenfolgendarstellung des angegebenen Objekts.

13 public int IndexOf( char value )
Gibt den Index des ersten Vorkommens des angegebenen Unicode-Zeichens in der aktuellen Zeichenfolge zurück. Der Index beginnt bei 0.

14 public int IndexOf( string value )
Gibt den Index des ersten Vorkommens der angegebenen Zeichenfolge in dieser Instanz zurück. Der Index beginnt bei 0.

15 public int IndexOf( char value, int startIndex )
Gibt den Index des ersten Vorkommens des angegebenen Unicode-Zeichens ab der angegebenen Zeichenposition in der Zeichenfolge zurück. Der Index beginnt bei 0.

16 public int IndexOf( string value, int startIndex )
Gibt den Index des ersten Vorkommens der angegebenen Zeichenfolge ab der angegebenen Zeichenposition in dieser Instanz zurück. Der Index beginnt bei 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)!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn