C # Основен вход и изход

В този урок ще научим как да приемаме входни данни от потребителя и да показваме изхода в C # с помощта на различни методи

C # изход

За да изведем нещо в C #, можем да използваме

 System.Console.WriteLine () ИЛИ System.Console.Write ()

Тук, Systemе пространство от имена, Consoleе клас в пространството от имена Systemи WriteLineи Writeса методи на класа Console.

Нека разгледаме един прост пример, който отпечатва низ на изходен екран.

Пример 1: Печат на низ с помощта на WriteLine ()

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

Когато стартираме програмата, изходът ще бъде

 C # е готин

Разлика между метода WriteLine () и Write ()

Основната разлика между WriteLine()и Write()е, че Write()методът отпечатва само предоставения му низ, докато WriteLine()методът отпечатва низ и също се премества в началото на следващия ред.

Нека да разгледаме примера по-долу, за да разберем разликата между тези методи.

Пример 2: Как да използваме метода WriteLine () и 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"); ) ) ) 

Когато стартираме програмата, изходът ще бъде

 Отпечатъци на нов ред Отпечатъци на същия ред

Печат на променливи и литерали с помощта на WriteLine () и Write ()

Методът WriteLine()and Write()може да се използва за отпечатване на променливи и литерали. Ето един пример.

Пример 3: Печат на променливи и литерали

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

Когато стартираме програмата, изходът ще бъде

 10 50.05

Комбиниране (обединяване) на два низа с помощта на + оператор и отпечатването им

Струните могат да се комбинират / свързват с помощта на +оператора по време на печат.

Пример 4: Отпечатване на обединен низ с помощта на + оператор

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

Когато стартираме програмата, изходът ще бъде

 Здравей Световна стойност = 55

Печат на конкатениран низ с помощта на форматиран низ (по-добра алтернатива)

По-добра алтернатива за отпечатване на конкатениран низ е използването на форматиран низ. Форматираният низ позволява на програмиста да използва заместители за променливи. Например,

Следващият ред,

 Console.WriteLine ("Стойност =" + val);

може да бъде заменен от,

 Console.WriteLine ("Стойност = (0)", val);

(0)е заместителят за променлива val, който ще бъде заменен със стойност на val. Тъй като се използва само една променлива, така че има само един заместител.

Във форматирания низ могат да се използват множество променливи. Ще видим това в примера по-долу.

Пример 5: Отпечатване на конкатениран низ чрез форматиране на String

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

Когато стартираме програмата, изходът ще бъде

 5 + 10 = 15

Тук (0)се заменя с firstNumber, (1)заменя се с secondNumber и (2)се заменя с резултат. Този подход на печатане е по-четлив и по-малко податлив на грешки, отколкото използването на +оператор.

За да научите повече за форматирането на низове, посетете C # форматиране на низове.

C # Вход

В C # най-простият метод за получаване на входни данни от потребителя е използването на ReadLine()метода на Consoleкласа. Въпреки това, Read()и ReadKey()също са на разположение за получаване на информация от страна на потребителя. Те също са включени в Consoleклас.

Пример 6: Вземете въвеждане на низове от потребителя

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

Когато стартираме програмата, изходът ще бъде:

 Въведете низ - Hello World Вие въведохте „Hello World“

Разлика между метода ReadLine (), Read () и ReadKey ():

Разликата между ReadLine(), Read()и ReadKey()методът е:

  • ReadLine(): ReadLine()Методът чете следващия ред на въвеждане от стандартния входен поток. Той връща същия низ.
  • Read(): Read()Методът чете следващия символ от стандартния входен поток. Той връща стойността ascii на символа.
  • ReadKey(): ReadKey()Методът получава следващия бутон, натиснат от потребителя. Този метод обикновено се използва за задържане на екрана, докато потребителят не натисне клавиш.

Ако искате да научите повече за тези методи, ето интересна дискусия за StackOverflow на: Разлика между Console.Read () и Console.ReadLine () ?.

Пример 7: Разлика между метода Read () и ReadKey ()

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

Когато стартираме програмата, изходът ще бъде

 Натиснете произволен клавиш, за да продължите … x Въвеждане с помощта на Read () - Обучение C # Ascii Value = 76

From this example, it must be clear how ReadKey() and Read() method works. While using ReadKey(), as soon as the key is pressed, it is displayed on the screen.

When Read() is used, it takes a whole line but only returns the ASCII value of first character. Hence, 76 (ASCII value of L) is printed.

Reading numeric values (integer and floating point types)

Reading a character or string is very simple in C#. All you need to do is call the corresponding methods as required.

But, reading numeric values can be slightly tricky in C#. We’ll still use the same ReadLine() method we used for getting string values. But since the ReadLine() method receives the input as string, it needs to be converted into integer or floating point type.

Един прост подход за преобразуване на нашия вход е използването на методите на Convertкласа.

Пример 8: Четене на числови стойности от потребител с помощта на клас Convert

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

Когато стартираме програмата, изходът ще бъде

 Въведете целочислена стойност: 101 Въведете 101 Въведете двойна стойност: 59.412 Въведохте 59.412

Класът ToInt32()and и ToDouble()на Convert преобразува низовия вход съответно в цяло число и двоен тип. По същия начин можем да преобразуваме входа в други типове. Ето пълен списък с наличните методи за Convert class.

Има и други начини за получаване на цифрови входове от потребителя. За да научите повече, посетете Четене на цяло число от въведеното от потребителя.

Интересни статии...