Trong hướng dẫn này, chúng ta sẽ học cách lấy đầu vào từ người dùng và hiển thị đầu ra trong C # bằng nhiều phương pháp khác nhau
Đầu ra C #
Để xuất nội dung nào đó trong C #, chúng ta có thể sử dụng
System.Console.WriteLine () HOẶC System.Console.Write ()
Đây, System
là một không gian tên, Console
là một lớp trong không gian tên System
và WriteLine
và Write
là các phương thức của lớp Console
.
Hãy xem một ví dụ đơn giản in một chuỗi ra màn hình.
Ví dụ 1: In chuỗi bằng WriteLine ()
using System; namespace Sample ( class Test ( public static void Main(string() args) ( Console.WriteLine("C# is cool"); ) ) )
Khi chúng tôi chạy chương trình, kết quả đầu ra sẽ là
C # thật tuyệt
Sự khác biệt giữa phương thức WriteLine () và Write ()
Sự khác biệt chính giữa WriteLine()
và Write()
là Write()
phương thức chỉ in chuỗi được cung cấp cho nó, trong khi WriteLine()
phương thức in chuỗi và di chuyển đến đầu dòng tiếp theo.
Hãy cùng xem ví dụ dưới đây để hiểu sự khác biệt giữa các phương pháp này.
Ví dụ 2: Cách sử dụng phương thức WriteLine () và 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"); ) ) )
Khi chúng tôi chạy chương trình, kết quả đầu ra sẽ là
In trên dòng mới In trên cùng một dòng
In các biến và chữ bằng cách sử dụng WriteLine () và Write ()
Các WriteLine()
và Write()
phương pháp có thể được sử dụng để in các biến và literals. Đây là một ví dụ.
Ví dụ 3: In các biến và chữ
using System; namespace Sample ( class Test ( public static void Main(string() args) ( int value = 10; // Variable Console.WriteLine(value); // Literal Console.WriteLine(50.05); ) ) )
Khi chúng tôi chạy chương trình, kết quả đầu ra sẽ là
10 50,05
Kết hợp (Nối) hai chuỗi bằng toán tử + và in chúng
Các chuỗi có thể được kết hợp / nối bằng +
toán tử trong khi in.
Ví dụ 4: In chuỗi liên kết bằng toán tử +
using System; namespace Sample ( class Test ( public static void Main(string() args) ( int val = 55; Console.WriteLine("Hello " + "World"); Console.WriteLine("Value = " + val); ) ) )
Khi chúng tôi chạy chương trình, kết quả đầu ra sẽ là
Hello World Value = 55
In chuỗi nối bằng chuỗi được định dạng (Thay thế tốt hơn)
Một giải pháp thay thế tốt hơn để in chuỗi được nối là sử dụng chuỗi được định dạng. Chuỗi được định dạng cho phép lập trình viên sử dụng trình giữ chỗ cho các biến. Ví dụ,
Dòng sau,
Console.WriteLine ("Giá trị =" + val);
có thể được thay thế bởi,
Console.WriteLine ("Giá trị = (0)", val);
(0)
là trình giữ chỗ cho biến val sẽ được thay thế bằng giá trị của val. Vì chỉ có một biến được sử dụng nên chỉ có một trình giữ chỗ.
Nhiều biến có thể được sử dụng trong chuỗi được định dạng. Chúng ta sẽ thấy điều đó trong ví dụ dưới đây.
Ví dụ 5: In chuỗi liên kết bằng cách sử dụng định dạng chuỗi
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); ) ) )
Khi chúng tôi chạy chương trình, kết quả đầu ra sẽ là
5 + 10 = 15
Ở đây, (0)
được thay thế bởi FirstNumber, (1)
được thay thế bởi secondNumber và (2)
được thay thế bằng kết quả. Phương pháp in đầu ra này dễ đọc hơn và ít bị lỗi hơn so với sử dụng +
toán tử.
Để biết thêm về định dạng chuỗi, hãy truy cập Định dạng chuỗi C #.
Đầu vào C #
Trong C #, phương pháp đơn giản nhất để lấy đầu vào từ người dùng là sử dụng ReadLine()
phương thức của Console
lớp. Tuy nhiên, Read()
và ReadKey()
cũng có sẵn để lấy ý kiến từ người dùng. Họ cũng được bao gồm trong Console
lớp học.
Ví dụ 6: Nhận đầu vào chuỗi từ người dùng
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); ) ) )
Khi chúng tôi chạy chương trình, kết quả đầu ra sẽ là:
Nhập một chuỗi - Hello World Bạn đã nhập 'Hello World'
Sự khác biệt giữa phương thức ReadLine (), Read () và ReadKey ():
Sự khác biệt giữa ReadLine()
, Read()
và ReadKey()
phương pháp là:
ReadLine()
:ReadLine()
Phương thức đọc dòng đầu vào tiếp theo từ dòng đầu vào chuẩn. Nó trả về cùng một chuỗi.Read()
:Read()
Phương thức đọc ký tự tiếp theo từ luồng đầu vào chuẩn. Nó trả về giá trị ascii của ký tự.ReadKey()
:ReadKey()
Phương thức nhận được phím tiếp theo do người dùng nhấn. Phương pháp này thường được sử dụng để giữ màn hình cho đến khi người dùng nhấn một phím.
Nếu bạn muốn biết thêm về các phương thức này, đây là một cuộc thảo luận thú vị trên StackOverflow về: Sự khác biệt giữa Console.Read () và Console.ReadLine () ?.
Ví dụ 7: Sự khác biệt giữa phương thức Read () và 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); ) ) )
Khi chúng tôi chạy chương trình, kết quả đầu ra sẽ là
Nhấn phím bất kỳ để tiếp tục… x Nhập liệu bằng Read () - Học C # Ascii Value = 76
Từ ví dụ này, nó phải rõ ràng cách thức ReadKey()
và Read()
phương pháp hoạt động. Trong khi sử dụng ReadKey()
, ngay khi nhấn phím, nó sẽ hiển thị trên màn hình.
Khi Read()
được sử dụng, nó mất cả một dòng nhưng chỉ trả về giá trị ASCII của ký tự đầu tiên. Do đó, 76
(giá trị ASCII của L
) được in.
Đọc các giá trị số (kiểu số nguyên và dấu phẩy động)
Đọc một ký tự hoặc chuỗi rất đơn giản trong C #. Tất cả những gì bạn cần làm là gọi các phương thức tương ứng theo yêu cầu.
Tuy nhiên, việc đọc các giá trị số có thể hơi phức tạp trong C #. Chúng tôi sẽ vẫn sử dụng cùng một ReadLine()
phương pháp mà chúng tôi đã sử dụng để nhận các giá trị chuỗi. Nhưng vì ReadLine()
phương thức nhận đầu vào là chuỗi, nó cần được chuyển đổi thành kiểu số nguyên hoặc dấu phẩy động.
Một cách tiếp cận đơn giản để chuyển đổi đầu vào của chúng tôi là sử dụng các phương thức của Convert
lớp.
Ví dụ 8: Đọc các giá trị số từ người dùng bằng cách sử dụng lớp 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); ) ) )
Khi chúng tôi chạy chương trình, kết quả đầu ra sẽ là
Nhập giá trị số nguyên: 101 Bạn đã nhập 101 Nhập giá trị kép: 59.412 Bạn đã nhập 59.412
Các ToInt32()
và ToDouble()
phương pháp của lớp Chuyển đổi chuyển đổi chuỗi đầu vào cho số nguyên và kiểu double tương ứng. Tương tự, chúng ta có thể chuyển đổi đầu vào sang các kiểu khác. Đây là danh sách đầy đủ các phương thức có sẵn cho lớp Convert.
Có nhiều cách khác để nhận đầu vào số từ người dùng. Để tìm hiểu thêm, hãy truy cập Đọc số nguyên từ đầu vào của người dùng.