String-Formatierung
Teil des Abschnitts Grundlagen der C#-Journey von Coddy — Lektion 63 von 69.
In C# ist String.Format() eine leistungsstarke Methode, die zum Erstellen formatierter Zeichenfolgen verwendet wird. Sie ermöglicht es Ihnen, Text mit Variablen auf lesbare und anpassbare Weise zu kombinieren. Diese Methode verwendet Formatbezeichner, um zu definieren, wie Variablen in die Zeichenfolge eingefügt werden sollen.
Lernen wir, wie man die String-Formatierung in C# verwendet:
Die grundlegende Syntax von String.Format() ist:
string formattedString = String.Format("format_string", arg0, arg1, ...);Wobei:
format_string: Ein String, der Text und Formatbezeichner enthält.arg0, arg1, ...: Die Variablen, die in denformat_stringeingefügt werden.
Schauen wir uns die Formatbezeichner an. Die Zahlen in den geschweiften Klammern beziehen sich auf die Position der Argumente:
{0}: Bezieht sich auf das erste Argument (arg0){1}: Bezieht sich auf das zweite Argument (arg1){2}: Bezieht sich auf das dritte Argument (arg2)- Und so weiter...
Versuchen wir ein einfaches Beispiel mit verschiedenen Arten von Argumenten:
string name = "Alice";
int age = 30;
double price = 19.99;
string formatted = String.Format("Name: {0}, Age: {1}, Price: {2}", name, age, price);
Console.WriteLine(formatted);Nach der Ausführung dieses Codes sehen Sie auf dem Bildschirm: Name: Alice, Age: 30, Price: 19.99
Sie können die Formatierung mit Formatbezeichnern nach einem Doppelpunkt noch weiter steuern. Der Formatbezeichner besteht aus einem Buchstaben (wie F für Festkommazahlen), gefolgt von einer optionalen Zahl für die Genauigkeit:
// Formatiere eine Zahl mit 2 Dezimalstellen
double number = 123.4567;
string formatted = String.Format("The value is {0:F2}", number);
Console.WriteLine(formatted);Nach der Ausführung dieses Codes sehen Sie auf dem Bildschirm: The value is 123.46
Sie können F1, F2, F3 usw. verwenden, um verschiedene Anzahlen von Dezimalstellen anzugeben
Aufgabe
EinfachErstellen Sie eine Methode namens CreateFormattedString, die die folgenden Argumente entgegennimmt:
- Einen String
productName. - Einen Integer
quantity. - Einen Double
unitPrice.
Die Methode sollte einen formatierten String zurückgeben, der diese Werte im folgenden Format kombiniert:
Product: [productName], Quantity: [quantity], Unit Price: [unitPrice]Formatieren Sie den unitPrice auf fünf Dezimalstellen, die quantity mit einer Dezimalstelle (konvertieren Sie diese in einen Double), und das erste Zeichen von productName sollte großgeschrieben werden.
Wenn zum Beispiel productName "laptop" ist, quantity 3 ist und unitPrice 1299.9999 ist, sollte die Methode Folgendes zurückgeben:
Product: Laptop, Quantity: 3.0, Unit Price: 1299.99990Um das erste Zeichen zu extrahieren und es gleichzeitig im Typ String anstatt im Typ char zu behalten, verwenden Sie:
str.Substring(0,1)
Spickzettel
Die Methode String.Format() erstellt formatierte Zeichenfolgen, indem sie Text mit Variablen unter Verwendung von Formatbezeichnern kombiniert.
Grundlegende Syntax:
string formattedString = String.Format("format_string", arg0, arg1, ...);Formatbezeichner verwenden geschweifte Klammern mit Positionsnummern:
{0}: Erstes Argument{1}: Zweites Argument{2}: Drittes Argument
Beispiel mit mehreren Datentypen:
string name = "Alice";
int age = 30;
double price = 19.99;
string formatted = String.Format("Name: {0}, Age: {1}, Price: {2}", name, age, price);
Console.WriteLine(formatted); // Ausgabe: Name: Alice, Age: 30, Price: 19.99Formatbezeichner mit Präzisionssteuerung unter Verwendung eines Doppelpunkts:
double number = 123.4567;
string formatted = String.Format("The value is {0:F2}", number);
Console.WriteLine(formatted); // Ausgabe: The value is 123.46Sie können F1, F2, F3 usw. verwenden, um eine unterschiedliche Anzahl von Dezimalstellen anzugeben.
Um das erste Zeichen als Zeichenfolge zu extrahieren: str.Substring(0,1)
Probier es selbst
using System;
public class Program {
public static string CreateFormattedString(string productName, int quantity, double unitPrice) {
// Schreiben Sie hier Ihren Code
}
public static void Main(string[] args) {
string product = Console.ReadLine();
int qty = int.Parse(Console.ReadLine());
double price = double.Parse(Console.ReadLine());
string formattedString = CreateFormattedString(product, qty, price);
Console.WriteLine(formattedString);
}
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorInkrement/DekrementPost-Inkrement/DekrementArithmetische Kurzschreibweisen7Grundlagen IO
Einfache AusgabeString-InterpolationEingabe lesenParsenWiederholung - Bis 120Wiederholung - True or False5Operatoren Teil 2
VergleichsoperatorenLogische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung – Einfache LogikLogische Operatoren Teil 3