Strings in C# Beheersen: Best Practices & Tips
In C# kun je strings gebruiken als array van karakters, maar gebruikelijk is het string sleutelwoord (alias voor System.String).
Een String-object Creëren
Methoden:
- Stringliteral toewijzen aan
Stringvariabele. Stringconstructor gebruiken.- Concatenatie-operator
+. - Property ophalen of methode aanroepen die string retourneert.
- Opmaakmethode aanroepen om waarde/object om te zetten naar string.
Voorbeeld
using System;
namespace StringApplicatie {
class Program {
static void Main(string[] args) {
string voornaam = "Rowan";
string achternaam = "Atkinson";
char[] letters = { 'H', 'e', 'l', 'l', 'o' };
string[] sarray = { "Hello", "From", "Tutorials", "Point" };
string volledigeNaam = voornaam + achternaam;
Console.WriteLine("Volledige Naam: {0}", volledigeNaam);
string groet = new string(letters);
Console.WriteLine("Groet: {0}", groet);
string bericht = String.Join(" ", sarray);
Console.WriteLine("Bericht: {0}", bericht);
DateTime wacht = new DateTime(2012, 10, 10, 17, 58, 1);
string chat = String.Format("Bericht verzonden om {0:t} op {0:D}", wacht);
Console.WriteLine("Bericht: {0}", chat);
}
}
}
Uitvoer:
Volledige Naam: RowanAtkinson Groet: Hello Bericht: Hello From Tutorials Point Bericht: Bericht verzonden om 5:58 PM op Wednesday, October 10, 2012
Eigenschappen van de String-klasse
| Nr | Eigenschap & Beschrijving |
|---|---|
| 1 | Chars – Krijgt Char op specifieke positie. |
| 2 | Length – Aantal tekens in de string. |
Methodes van de String-klasse
De String-klasse heeft talloze methodes. Belangrijkste:
| Nr | Methode & Beschrijving |
|---|---|
| 1 | Compare(strA, strB) – Vergelijkt twee strings, retourneert relatieve positie. |
| 2 | Compare(strA, strB, ignoreCase) – Vergelijkt, optioneel case-insensitive. |
| 3 | Concat(str0, str1) – Concateneert twee strings. |
| 4 | Concat(str0, str1, str2) – Concateneert drie strings. |
| 5 | Concat(str0, str1, str2, str3) – Concateneert vier strings. |
| 6 | Contains(value) – Of substring voorkomt. |
| 7 | Copy(str) – Nieuwe string met dezelfde waarde. |
| 8 | CopyTo(...) – Kopieert tekens naar char-array. |
| 9 | EndsWith(value) – Of string eindigt met substring. |
| 10 | Equals(value) – Of twee strings dezelfde waarde hebben. |
| 11 | Equals(a, b) – Statische versie. |
| 12 | Format(format, arg0) – Formateert string met argument. |
| 13 | IndexOf(char) – Eerste index van teken. |
| 14 | IndexOf(string) – Eerste index van substring. |
| 15 | IndexOf(char, startIndex) – Zoeken vanaf startIndex. |
| 16 | IndexOf(string, startIndex) – Zoeken substring vanaf startIndex. |
| 17 | IndexOfAny(char[]) – Eerste index van elk teken in array. |
| 18 | IndexOfAny(char[], startIndex) – Met startIndex. |
| 19 | Insert(startIndex, value) – Voegt string in op positie. |
| 20 | IsNullOrEmpty(value) – Of string null of leeg is. |
| 21 | Join(separator, params string[]) – Concateneert array met separator. |
| 22 | Join(separator, string[], startIndex, count) – Deel van array. |
| 23 | LastIndexOf(char) – Laatste index van teken. |
| 24 | LastIndexOf(string) – Laatste index van substring. |
| 25 | Remove(startIndex) – Verwijdert vanaf startIndex tot eind. |
| 26 | Remove(startIndex, count) – Verwijdert aantal tekens vanaf startIndex. |
| 27 | Replace(oldChar, newChar) – Vervangt alle voorkomens van teken. |
| 28 | Replace(oldValue, newValue) – Vervangt alle voorkomens van substring. |
| 29 | Split(params char[]) – Splitst string in array op separator. |
| 30 | Split(char[], count) – Max aantal substrings. |
| 31 | StartsWith(value) – Of string begint met substring. |
| 32 | ToCharArray() – Converteert naar char-array. |
| 33 | ToCharArray(startIndex, length) – Deel naar char-array. |
| 34 | ToLower() – Naar kleine letters. |
| 35 | ToUpper() – Naar hoofdletters. |
| 36 | Trim() – Verwijdert leidende/trailing witruimte. |
Voor volledige lijst: MSDN documentatie.
Voorbeelden
Strings Vergelijken
using System;
namespace StringApplicatie {
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 + " en " + str2 + " zijn gelijk.");
else
Console.WriteLine(str1 + " en " + str2 + " zijn niet gelijk.");
Console.ReadKey();
}
}
}
Uitvoer: This is test en This is text zijn niet gelijk.
String Bevat Substring
if (str.Contains("test"))
Console.WriteLine("De reeks 'test' is gevonden.");
Uitvoer: De reeks 'test' is gevonden.
Substring Ophalen
string str = "Last night I dreamt of San Pedro"; string substr = str.Substring(23); Console.WriteLine(substr); // San Pedro
Strings Samenvoegen
string[] starray = { "Down the way nights are dark", ... };
string str = String.Join("\n", starray);
Console.WriteLine(str);
C Taal
- C# Classes & Objects: Fundamenten voor Robuuste OOP
- C# Strings: Fundamentals, Operaties & Geavanceerde Technieken
- C++ String‑Functies Beheersen: strcpy, strcat, strlen, strcmp – Praktische Voorbeelden
- C Strings Makkelijk Gemaakt: Declaratie, Invoer, Uitvoer en Bibliotheekfuncties
- Python-stringoperaties beheersen: Replace, Join, Split, Reverse en case-conversie
- Java Strings beheersen: aanmaken, methodes en best practices
- Java Singleton patroon uitgelegd: hoe veilig te implementeren en gebruiken
- String representaties in Java Enums meesteren
- Java Strings Class: String Creatie & Manipulatie Onder de Knie
- Java Object Serialisatie: Objecten Persisteren en Herstellen
- Java 8 Overzicht: Nieuwe Functionele, Streaming en Datum-Tijd API's