Megosztás a következőn keresztül:


Új sztringek létrehozása a .NET-ben

A .NET lehetővé teszi a sztringek egyszerű hozzárendeléssel történő létrehozását, és túlterhel egy osztálykonstruktort is, hogy támogassa a sztringek létrehozását számos különböző paraméter használatával. A .NET az osztályban System.String több metódust is biztosít, amelyek több sztring, sztringtömb vagy objektum kombinálásával új sztringobjektumokat hoznak létre.

Sztringek létrehozása hozzárendeléssel

Az új String objektumok létrehozásának legegyszerűbb módja egy sztringkonstans hozzárendelése egy String objektumhoz.

Sztringek létrehozása osztálykonstruktor használatával

Az osztálykonstruktor túlterhelésével String sztringeket hozhat létre karaktertömbökből. Új sztringet úgy is létrehozhat, hogy egy adott karaktert többször duplikál.

Sztringeket visszaadó metódusok

Az alábbi táblázat számos hasznos metódust sorol fel, amelyek új sztringobjektumokat adnak vissza.

Metódus neve Használat
String.Format Formázott sztringet hoz létre bemeneti objektumok készletéből.
String.Concat Sztringeket készít két vagy több sztringből.
String.Join Új sztringet hoz létre egy sztringtömb kombinálásával.
String.Insert Új sztringet hoz létre úgy, hogy egy sztringet beszúr egy meglévő sztring megadott indexébe.
String.CopyTo A sztringben megadott karaktereket egy karaktertömb megadott helyére másolja.

Formátum

A String.Format metódus használatával formázott sztringeket hozhat létre, és több objektumot képviselő sztringeket fűzhet össze. Ez a metódus automatikusan sztringgé alakítja az átadott objektumokat. Ha például az alkalmazásnak meg kell jelenítenie egy Int32-értéket és egy DateTime-értéket a felhasználónak, egyszerűen létrehozhat egy sztringet, amely ezeket az értékeket a Formátum metódussal ábrázolja. Az ezzel a módszerrel használt formázási konvenciókról további információt az összetett formázásról szóló szakaszban talál.

Az alábbi példa a Formátum metódust használja egy egész szám változót használó sztring létrehozásához.

int numberOfFleas = 12;
string miscInfo = String.Format("Your dog has {0} fleas. " +
                                "It is time to get a flea collar. " +
                                "The current universal date is: {1:u}.",
                                numberOfFleas, DateTime.Now);
Console.WriteLine(miscInfo);
// The example displays the following output:
//       Your dog has 12 fleas. It is time to get a flea collar.
//       The current universal date is: 2008-03-28 13:31:40Z.
Dim numberOfFleas As Integer = 12
Dim miscInfo As String = String.Format("Your dog has {0} fleas. " & _
                                       "It is time to get a flea collar. " & _
                                       "The current universal date is: {1:u}.", _
                                       numberOfFleas, Date.Now)
Console.WriteLine(miscInfo)
' The example displays the following output:
'       Your dog has 12 fleas. It is time to get a flea collar. 
'       The current universal date is: 2008-03-28 13:31:40Z.

Ebben a példábanDateTime.Now az aktuális dátumot és időt az aktuális szálhoz társított kultúra által meghatározott módon jeleníti meg.

Concat

A String.Concat metódussal egyszerűen létrehozhat egy új sztringobjektumot két vagy több meglévő objektumból. Nyelvfüggetlen módot biztosít a sztringek összefűzésére. Ez a metódus minden olyan osztályt elfogad, amely a System.Objectból származik. Az alábbi példa egy sztringet hoz létre két meglévő sztringobjektumból és egy elválasztó karakterből.

string helloString1 = "Hello";
string helloString2 = "World!";
Console.WriteLine(String.Concat(helloString1, ' ', helloString2));
// The example displays the following output:
//      Hello World!
Dim helloString1 As String = "Hello"
Dim helloString2 As String = "World!"
Console.WriteLine(String.Concat(helloString1, " "c, helloString2))
' The example displays the following output:
'      Hello World!

Csatlakozás

A String.Join metódus egy új sztringet hoz létre egy sztringtömbből és egy elválasztó sztringből. Ez a módszer akkor hasznos, ha több sztringet szeretne összefűzni, és egy listát esetleg vesszővel elválasztani.

Az alábbi példa egy szóközt használ egy sztringtömb kötéséhez.

string[] words = {"Hello", "and", "welcome", "to", "my" , "world!"};
Console.WriteLine(String.Join(" ", words));
// The example displays the following output:
//      Hello and welcome to my world!
Dim words() As String = {"Hello", "and", "welcome", "to", "my", "world!"}
Console.WriteLine(String.Join(" ", words))
' The example displays the following output:
'      Hello and welcome to my world!

Insert

A String.Insert metódus úgy hoz létre új sztringet, hogy egy sztringet egy másik sztring megadott pozíciójába szúr be. Ez a metódus nulla alapú indexet használ. Az alábbi példa egy sztringet szúr be az ötödik indexpozícióba MyString , és létrehoz egy új sztringet ezzel az értékkel.

string sentence = "Once a time.";
 Console.WriteLine(sentence.Insert(4, " upon"));
 // The example displays the following output:
 //      Once upon a time.
Dim sentence As String = "Once a time."
Console.WriteLine(sentence.Insert(4, " upon"))
' The example displays the following output:
'      Once upon a time.

CopyTo

A String.CopyTo metódus egy sztring egyes részeit egy karaktertömbbe másolja. Megadhatja a sztring kezdő indexét és a másolandó karakterek számát is. Ez a módszer a forrásindexet, a karaktertömböt, a célindexet és a másolandó karakterek számát veszi alapul. Minden index nulla alapú.

Az alábbi példa a CopyTo metódussal másolja a "Hello" szó karaktereit egy sztringobjektumból egy karaktertömb első indexpozíciójára.

string greeting = "Hello World!";
char[] charArray = {'W','h','e','r','e'};
Console.WriteLine("The original character array: {0}", new string(charArray));
greeting.CopyTo(0, charArray,0 ,5);
Console.WriteLine("The new character array: {0}", new string(charArray));
// The example displays the following output:
//       The original character array: Where
//       The new character array: Hello
Dim greeting As String = "Hello World!"
Dim charArray() As Char = {"W"c, "h"c, "e"c, "r"c, "e"c}
Console.WriteLine("The original character array: {0}", New String(charArray))
greeting.CopyTo(0, charArray, 0, 5)
Console.WriteLine("The new character array: {0}", New String(charArray))
' The example displays the following output:
'       The original character array: Where
'       The new character array: Hello

Lásd még