C # Perustulo ja -lähtö

Tässä opetusohjelmassa opimme ottamaan syötteitä käyttäjältä ja näyttämään tuotoksen C #: ssä eri menetelmillä

C # -ulostulo

Jotta voimme tuottaa jotain C #: ssa, voimme käyttää

 System.Console.WriteLine () TAI System.Console.Write ()

Täällä Systemon nimiavaruus, Consoleon luokan sisällä nimiavaruus Systemja WriteLineja Writemenetelmiä luokan Console.

Katsotaanpa yksinkertaista esimerkkiä, joka tulostaa merkkijonon näyttöön.

Esimerkki 1: Merkkijonon tulostaminen WriteLine () -ohjelmalla

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

Kun suoritamme ohjelman, tulos on

 C # on siistiä

Ero WriteLine () - ja Write () -menetelmien välillä

Suurin ero WriteLine()ja Write()on, että Write()menetelmä tulostaa vain sille toimitetun merkkijonon, kun taas WriteLine()menetelmä tulostaa merkkijonon ja siirtyy myös seuraavan rivin alkuun.

Katsotaanpa seuraavaa esimerkkiä ymmärtääksemme näiden menetelmien välisen eron.

Esimerkki 2: Kuinka käyttää WriteLine () ja Write () -menetelmiä?

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

Kun suoritamme ohjelman, tulos on

 Tulostaa uudelle riville Tulostaa samalla rivillä

Muuttujien ja literaalien tulostaminen WriteLine () - ja Write () -toiminnoilla

WriteLine()Ja Write()menetelmää voidaan käyttää tulostamaan muuttujia ja literals. Tässä on esimerkki.

Esimerkki 3: Muuttujien ja literaalien tulostaminen

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

Kun suoritamme ohjelman, tulos on

 10 50.05

Yhdistetään (ketjutetaan) kaksi merkkijonoa + -operaattorilla ja tulostetaan ne

Jouset voidaan yhdistää / ketjuttaa +operaattorin avulla tulostuksen aikana.

Esimerkki 4: Ketjutetun merkkijonon tulostaminen + -operaattorilla

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

Kun suoritamme ohjelman, tulos on

 Hei maailman arvo = 55

Liitetyn merkkijonon tulostaminen alustetulla merkkijonolla (parempi vaihtoehto)

Parempi vaihtoehto ketjutetun merkkijonon tulostamiseen on muotoiltu merkkijono. Alustetun merkkijonon avulla ohjelmoija voi käyttää muuttujien paikkamerkkejä. Esimerkiksi,

Seuraava rivi,

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

voidaan korvata

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

(0)on muuttujan val paikkamerkki, joka korvataan val-arvolla. Koska käytetään vain yhtä muuttujaa, on vain yksi paikkamerkki.

Alustetussa merkkijonossa voidaan käyttää useita muuttujia. Näemme sen alla olevassa esimerkissä.

Esimerkki 5: Liitetyn merkkijonon tulostaminen merkkijonon muotoilulla

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

Kun suoritamme ohjelman, tulos on

 5 + 10 = 15

Tässä (0)korvataan firstNumber, (1)korvataan secondNumber ja (2)korvataan tulos. Tämä tulostustapa on luettavampi ja vähemmän virhealtista kuin +operaattorin käyttö.

Jos haluat tietää enemmän merkkijonon muotoilusta, käy C # -merkkijonon muotoilussa.

C # -tulo

Kohdassa C # yksinkertaisin tapa saada käyttäjältä tietoa on käyttää luokan ReadLine()menetelmää Console. Kuitenkin Read()ja ReadKey()ovat saatavilla myös saada käyttäjän syötettä. Ne kuuluvat myös Consoleluokkaan.

Esimerkki 6: Hae merkkijonotulo käyttäjältä

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

Kun suoritamme ohjelmaa, tulos on:

 Kirjoita merkkijono - Hei maailma Kirjoitit "Hei maailma"

Ero ReadLine (), Read () ja ReadKey () -menetelmien välillä:

Ero ReadLine(), Read()ja ReadKey()menetelmä on:

  • ReadLine(): ReadLine()Menetelmä lukee seuraavan tulorivin vakiotulovirrasta. Se palauttaa saman merkkijonon.
  • Read(): Read()Menetelmä lukee seuraavan merkin vakiotulovirrasta. Se palauttaa merkin ascii-arvon.
  • ReadKey(): ReadKey()Menetelmä saa seuraavan käyttäjän painaman näppäimen. Tätä menetelmää käytetään yleensä näytön pitämiseen, kunnes käyttäjä painaa näppäintä.

Jos haluat tietää enemmän näistä menetelmistä, tässä on mielenkiintoinen keskustelu StackOverflow-aiheesta aiheesta: Console.Read () ja Console.ReadLine ()?

Esimerkki 7: Ero Read () - ja ReadKey () -menetelmien välillä

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

Kun suoritamme ohjelman, tulos on

 Paina mitä tahansa näppäintä jatkaaksesi … x Syötä käyttäen Read () - Learning C # Ascii -arvo = 76

Tästä esimerkistä on oltava selvää, miten ReadKey()ja Read()menetelmä toimii. Käytön aikana ReadKey(), heti kun näppäintä painetaan, se näkyy näytöllä.

Kun Read()sitä käytetään, se vie kokonaisen rivin, mutta palauttaa vain ensimmäisen merkin ASCII-arvon. Siksi 76(ASCII-arvo L) tulostetaan.

Numeeristen arvojen lukeminen (kokonaisluku- ja liukuluku tyypit)

Merkin tai merkkijonon lukeminen on hyvin yksinkertaista C #: ssä. Sinun tarvitsee vain kutsua vastaavat menetelmät tarpeen mukaan.

Numeeristen arvojen lukeminen voi kuitenkin olla hieman hankalaa C #: ssä. Käytämme edelleen samaa ReadLine()menetelmää, jota käytimme merkkijonojen arvojen saamiseen. Mutta koska ReadLine()menetelmä vastaanottaa syötteen merkkijonona, se on muunnettava kokonaisluku- tai liukuluku-tyypiksi.

Yksi yksinkertainen lähestymistapa tulomme muuntamiseen on Convertluokan menetelmien käyttäminen .

Esimerkki 8: Numeeristen arvojen lukeminen käyttäjältä Muunna-luokan avulla

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

Kun suoritamme ohjelman, tulos on

 Syötä kokonaisluku: 101 Annoit 101 Syötä kaksinkertainen arvo: 59.412 Annoit 59.412

ToInt32()Ja ToDouble()menetelmä Muunna luokan muuntaa merkkijonon tulo kokonaisluku ja kaksinkertainen tyyppi, vastaavasti. Vastaavasti voimme muuntaa syötteen muuntyyppisiksi. Tässä on täydellinen luettelo muunnosluokan käytettävissä olevista menetelmistä.

On muitakin tapoja saada numeerisia syötteitä käyttäjältä. Lisätietoja on kohdassa Kokonaisluvun lukeminen käyttäjän syötteistä.

Mielenkiintoisia artikkeleita...