C# Grundlegende Ein- und Ausgabe
Einfache C#-Eingabe und -Ausgabe
In diesem Tutorial lernen wir, wie man Eingaben von Benutzern entgegennimmt und die Ausgabe in C# mit verschiedenen Methoden anzeigt
C#-Ausgabe
Um etwas in C# auszugeben, können wir
verwendenSystem.Console.WriteLine() OR System.Console.Write()
Hier, System
ist ein Namespace, Console
ist eine Klasse im Namespace System
und WriteLine
und Write
sind Methoden der Klasse Console
.
Sehen wir uns ein einfaches Beispiel an, das einen String auf dem Ausgabebildschirm ausgibt.
Beispiel 1:String mit WriteLine() drucken
using System;
namespace Sample
{
class Test
{
public static void Main(string[] args)
{
Console.WriteLine("C# is cool");
}
}
}
Wenn wir das Programm ausführen, lautet die Ausgabe
C# is cool
Unterschied zwischen WriteLine()- und Write()-Methode
Der Hauptunterschied zwischen WriteLine()
und Write()
ist das die Write()
-Methode gibt nur die ihr bereitgestellte Zeichenfolge aus, während WriteLine()
-Methode gibt den String aus und springt ebenfalls zum Anfang der nächsten Zeile.
Sehen wir uns das folgende Beispiel an, um den Unterschied zwischen diesen Methoden zu verstehen.
Beispiel 2:Wie verwendet man WriteLine() und die Methode Write()?
using System;
namespace Sample
{
class Test
{
public static void Main(string[] args)
{
Console.WriteLine("Prints on ");
Console.WriteLine("New line");
Console.Write("Prints on ");
Console.Write("Same line");
}
}
}
Wenn wir das Programm ausführen, lautet die Ausgabe
Prints on New line Prints on Same line
Variablen und Literale mit WriteLine() und Write() drucken
Die WriteLine()
und Write()
-Methode kann zum Drucken von Variablen und Literalen verwendet werden. Hier ist ein Beispiel.
Beispiel 3:Variablen und Literale drucken
using System;
namespace Sample
{
class Test
{
public static void Main(string[] args)
{
int value = 10;
// Variable
Console.WriteLine(value);
// Literal
Console.WriteLine(50.05);
}
}
}
Wenn wir das Programm ausführen, lautet die Ausgabe
10 50.05
Kombinieren (Verketten) von zwei Strings mit dem +-Operator und deren Ausgabe
Zeichenfolgen können mit +
kombiniert/verkettet werden Bediener beim Drucken.
Beispiel 4:Drucken einer verketteten Zeichenfolge mit dem +-Operator
using System;
namespace Sample
{
class Test
{
public static void Main(string[] args)
{
int val = 55;
Console.WriteLine("Hello " + "World");
Console.WriteLine("Value = " + val);
}
}
}
Wenn wir das Programm ausführen, lautet die Ausgabe
Hello World Value = 55
Verketteten String mit formatiertem String drucken [bessere Alternative]
Eine bessere Alternative zum Drucken verketteter Zeichenfolgen ist die Verwendung einer formatierten Zeichenfolge. Formatierte Zeichenfolge ermöglicht Programmierern die Verwendung von Platzhaltern für Variablen. Zum Beispiel
Die folgende Zeile,
Console.WriteLine("Value = " + val);
kann ersetzt werden durch,
Console.WriteLine("Value = {0}", val);
{0}
ist der Platzhalter für die Variable val was durch den Wert von val ersetzt wird . Da nur eine Variable verwendet wird, gibt es auch nur einen Platzhalter.
In der formatierten Zeichenfolge können mehrere Variablen verwendet werden. Wir werden das im Beispiel unten sehen.
Beispiel 5:Drucken einer verketteten Zeichenfolge mit Zeichenfolgenformatierung
using System;
namespace Sample
{
class Test
{
public static void Main(string[] args)
{
int firstNumber = 5, secondNumber = 10, result;
result = firstNumber + secondNumber;
Console.WriteLine("{0} + {1} = {2}", firstNumber, secondNumber, result);
}
}
}
Wenn wir das Programm ausführen, lautet die Ausgabe
5 + 10 = 15
Hier, {0}
wird durch firstNumber ersetzt , {1}
wird durch zweiteNummer ersetzt und {2}
wird durch Ergebnis ersetzt . Dieser Ansatz der Druckausgabe ist besser lesbar und weniger fehleranfällig als die Verwendung von +
Betreiber.
Weitere Informationen zur Zeichenfolgenformatierung finden Sie unter C#-Zeichenfolgenformatierung .
C#-Eingabe
In C# ist die einfachste Methode, um Eingaben vom Benutzer zu erhalten, die Verwendung von ReadLine()
Methode des Console
Klasse. Jedoch Read()
und ReadKey()
sind auch verfügbar, um Eingaben vom Benutzer zu erhalten. Sie sind auch in Console
enthalten Klasse.
Beispiel 6:Zeichenfolgeneingabe vom Benutzer erhalten
using System;
namespace Sample
{
class Test
{
public static void Main(string[] args)
{
string testString;
Console.Write("Enter a string - ");
testString = Console.ReadLine();
Console.WriteLine("You entered '{0}'", testString);
}
}
}
Wenn wir das Programm ausführen, lautet die Ausgabe:
Enter a string - Hello World You entered 'Hello World'
Unterschied zwischen den Methoden ReadLine(), Read() und ReadKey():
Der Unterschied zwischen ReadLine()
, Read()
und ReadKey()
Methode ist:
ReadLine()
:DerReadLine()
-Methode liest die nächste Eingabezeile aus dem Standardeingabestream. Es gibt dieselbe Zeichenfolge zurück.Read()
:DerRead()
-Methode liest das nächste Zeichen aus dem Standardeingabestrom. Es gibt den ASCII-Wert des Zeichens zurück.ReadKey()
:DerReadKey()
-Methode erhält die nächste vom Benutzer gedrückte Taste. Diese Methode wird normalerweise verwendet, um den Bildschirm zu halten, bis der Benutzer eine Taste drückt.
Wenn Sie mehr über diese Methoden erfahren möchten, finden Sie hier eine interessante Diskussion zu StackOverflow zum Thema:Unterschied zwischen Console.Read() und Console.ReadLine()?.
Beispiel 7:Unterschied zwischen Read()- und ReadKey()-Methode
using System;
namespace Sample
{
class Test
{
public static void Main(string[] args)
{
int userInput;
Console.WriteLine("Press any key to continue...");
Console.ReadKey();
Console.WriteLine();
Console.Write("Input using Read() - ");
userInput = Console.Read();
Console.WriteLine("Ascii Value = {0}",userInput);
}
}
}
Wenn wir das Programm ausführen, lautet die Ausgabe
Press any key to continue... x Input using Read() - Learning C# Ascii Value = 76
Aus diesem Beispiel muss klar sein, wie ReadKey()
und Read()
Methode funktioniert. Bei Verwendung von ReadKey()
, sobald die Taste gedrückt wird, wird sie auf dem Bildschirm angezeigt.
Wenn Read()
verwendet wird, dauert es eine ganze Zeile, gibt aber nur den ASCII-Wert des ersten Zeichens zurück. Daher 76
(ASCII-Wert von L
) wird gedruckt.
Lesen numerischer Werte (Integer- und Fließkommatypen)
Das Lesen eines Zeichens oder einer Zeichenfolge ist in C# sehr einfach. Sie müssen lediglich die entsprechenden Methoden nach Bedarf aufrufen.
Das Lesen numerischer Werte kann in C# jedoch etwas schwierig sein. Wir verwenden weiterhin denselben ReadLine()
Methode, die wir zum Abrufen von Zeichenfolgenwerten verwendet haben. Aber seit dem ReadLine()
Methode erhält die Eingabe als String, sie muss in einen Integer- oder Fließkommatyp konvertiert werden.
Ein einfacher Ansatz zum Konvertieren unserer Eingabe ist die Verwendung der Methoden von Convert
Klasse.
Beispiel 8:Lesen von numerischen Werten vom Benutzer mithilfe der Convert-Klasse
using System;
namespace UserInput
{
class MyClass
{
public static void Main(string[] args)
{
string userInput;
int intVal;
double doubleVal;
Console.Write("Enter integer value: ");
userInput = Console.ReadLine();
/* Converts to integer type */
intVal = Convert.ToInt32(userInput);
Console.WriteLine("You entered {0}",intVal);
Console.Write("Enter double value: ");
userInput = Console.ReadLine();
/* Converts to double type */
doubleVal = Convert.ToDouble(userInput);
Console.WriteLine("You entered {0}",doubleVal);
}
}
}
Wenn wir das Programm ausführen, lautet die Ausgabe
Enter integer value: 101 You entered 101 Enter double value: 59.412 You entered 59.412
Der ToInt32()
und ToDouble()
-Methode der Convert-Klasse konvertiert die String-Eingabe in einen Integer- bzw. Double-Typ. Ebenso können wir die Eingabe in andere Typen konvertieren. Hier ist eine vollständige Liste der verfügbaren Methoden für die Convert-Klasse.
Es gibt andere Möglichkeiten, numerische Eingaben vom Benutzer zu erhalten. Weitere Informationen finden Sie unter Ganzzahl aus Benutzereingaben lesen.
C Sprache
- Zu Cloud Infinity und darüber hinaus
- Sicherheit und wichtige Vorteile der Verwendung von Cloud Linux
- C++ Basic Input/Output
- C Eingang Ausgang (E/A)
- Python-Eingabe, -Ausgabe und -Import
- Java Basic Input und Output
- Postfächer:Einführung und grundlegende Dienste
- Semaphoren:Einführung und grundlegende Dienste
- Warteschlangen:Einführung und grundlegende Dienste
- Python- und Raspberry Pi-Temperatursensor