C # Grundlæggende input og output

I denne vejledning lærer vi, hvordan man tager input fra bruger og og viser output i C # ved hjælp af forskellige metoder

C # output

For at sende noget i C # kan vi bruge

 System.Console.WriteLine () ELLER System.Console.Write ()

Her Systemer et namespace, Consoleer en klasse indenfor namespace Systemog WriteLineog Writeer metoder til klassen Console.

Lad os se på et simpelt eksempel, der udskriver en streng til outputskærmen.

Eksempel 1: Udskrivning af streng ved hjælp af WriteLine ()

 using System; namespace Sample ( class Test ( public static void Main(string() args) ( Console.WriteLine("C# is cool"); ) ) ) 

Når vi kører programmet, vil output være

 C # er sejt

Forskel mellem WriteLine () og Write () metode

Hovedforskellen mellem WriteLine()og Write()er, at Write()metoden kun udskriver den streng, der er leveret til den, mens WriteLine()metoden udskriver strengen og også flytter til starten af ​​næste linje.

Lad os se på eksemplet nedenfor for at forstå forskellen mellem disse metoder.

Eksempel 2: Hvordan bruges metoden WriteLine () og 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"); ) ) ) 

Når vi kører programmet, vil output være

 Udskriver på ny linje Udskriver på samme linje

Udskrivning af variabler og litteratur ved hjælp af WriteLine () og Skriv ()

Metoden WriteLine()og Write()kan bruges til at udskrive variabler og bogstaver. Her er et eksempel.

Eksempel 3: Udskrivning af variabler og litteratur

 using System; namespace Sample ( class Test ( public static void Main(string() args) ( int value = 10; // Variable Console.WriteLine(value); // Literal Console.WriteLine(50.05); ) ) ) 

Når vi kører programmet, vil output være

 10 50.05

Kombination (sammenkædning) af to strenge ved hjælp af + -operatoren og udskrivning af dem

Strenge kan kombineres / sammenkædes ved hjælp af +operatøren under udskrivning.

Eksempel 4: Udskrivning af sammenkædet streng ved hjælp af + -operatoren

 using System; namespace Sample ( class Test ( public static void Main(string() args) ( int val = 55; Console.WriteLine("Hello " + "World"); Console.WriteLine("Value = " + val); ) ) ) 

Når vi kører programmet, vil output være

 Hej verdensværdi = 55

Udskrivning af sammenkædet streng ved hjælp af formateret streng (bedre alternativ)

Et bedre alternativ til udskrivning af sammenkædet streng er at bruge formateret streng. Formateret streng tillader programmør at bruge pladsholdere til variabler. For eksempel,

Den følgende linje,

 Console.WriteLine ("Value =" + val);

kan erstattes af,

 Console.WriteLine ("Value = (0)", val);

(0)er pladsholderen for variabel val, som erstattes af værdien for val. Da der kun bruges en variabel, så er der kun én pladsholder.

Flere variabler kan bruges i den formaterede streng. Det vil vi se i eksemplet nedenfor.

Eksempel 5: Udskrivning af sammenkædet streng ved hjælp af formatering af streng

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

Når vi kører programmet, vil output være

 5 + 10 = 15

Her (0)erstattes med firstNumber, (1)erstattes af secondNumber og (2)erstattes af resultat. Denne fremgangsmåde til udskrivning af output er mere læselig og mindre udsat for fejl end ved brug af +operatør.

Hvis du vil vide mere om strengformatering, skal du besøge C # strengformatering.

C # Input

I C # er den enkleste metode til at få input fra brugeren ved hjælp ReadLine()af Consoleklassens metode . Dog Read()og ReadKey()er også tilgængelige for at få input fra brugeren. De er også inkluderet i Consoleklassen.

Eksempel 6: Få strenginput fra bruger

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

Når vi kører programmet, vil output være:

 Indtast en streng - Hello World Du indtastede 'Hello World'

Forskel mellem ReadLine (), Read () og ReadKey () metode:

Forskellen mellem ReadLine(), Read()og ReadKey()fremgangsmåden er:

  • ReadLine(): ReadLine()Metoden læser den næste inputlinje fra standardinputstrømmen. Den returnerer den samme streng.
  • Read(): Read()Metoden læser det næste tegn fra standardindgangsstrømmen. Det returnerer karakterens ascii-værdi.
  • ReadKey(): ReadKey()Metoden henter den næste tast, der trykkes af brugeren. Denne metode bruges normalt til at holde skærmen, indtil brugeren trykker på en tast.

Hvis du vil vide mere om disse metoder, er her en interessant diskussion om StackOverflow om: Forskel mellem Console.Read () og Console.ReadLine () ?.

Eksempel 7: Forskel mellem Read () og ReadKey () -metoden

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

Når vi kører programmet, vil output være

 Tryk på en vilkårlig tast for at fortsætte … x Input ved hjælp af Read () - Learning C # Ascii Value = 76

Fra dette eksempel skal det være klart, hvordan ReadKey()og Read()metode fungerer. Mens du bruger ReadKey(), så snart der trykkes på tasten, vises det på skærmen.

Når Read()det bruges, tager det en hel linje, men returnerer kun ASCII-værdien for det første tegn. Derfor 76(ASCII-værdi af L) udskrives.

Læsning af numeriske værdier (heltal og flydende punkttyper)

Det er meget simpelt at læse et tegn eller en streng i C #. Alt du skal gøre er at kalde de tilsvarende metoder efter behov.

Men at læse numeriske værdier kan være lidt vanskelig i C #. Vi bruger stadig den samme ReadLine()metode, som vi brugte til at få strengværdier. Men da ReadLine()metoden modtager input som streng, skal den konverteres til heltal eller flydende punkt.

En enkel tilgang til konvertering af vores input er at bruge Convertklassemetoderne.

Eksempel 8: Læsning af numeriske værdier fra bruger ved hjælp af 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); ) ) ) 

Når vi kører programmet, vil output være

 Indtast heltal værdi: 101 Du indtastede 101 Indtast dobbelt værdi: 59.412 Du indtastede 59.412

Metoden ToInt32()og ToDouble()konverteringsklassen konverterer strenginput til henholdsvis heltal og dobbelt type. På samme måde kan vi konvertere input til andre typer. Her er en komplet liste over tilgængelige metoder til konverteringsklasse.

Der er andre måder at få numeriske input fra brugeren på. For at lære mere, besøg Læsning af et heltal fra brugerinput.

Interessante artikler...