|
|
51CTO旗下网站
|
|
移动端

1.3.1 从控制台获取输入

《C# 6.0本质论(第5版)》第1章C#概述,本章使用传统HelloWorld程序介绍C#,重点是C#语法基础,包括在C#程序中定义入口。通过本章的学习,将熟悉C#的语法风格和结构,并能写最简单的C#程序。本节为大家介绍从控制台获取输入。

作者:周靖/庞燕 译来源:人民邮电出版社|2017-07-21 14:49

【大咖·来了 第7期】10月24日晚8点观看《智能导购对话机器人实践》

1.3 控制台输入和输出

本章已多次使用 System.Console.WriteLine将文本输出到命令控制台。除了能输出数据,程序还需要能接收用户输入的数据。

1.3.1 从控制台获取输入

获取用户在控制台输入文本的一种方法是使用 System.Console.ReadLine()。此方法将暂停程序执行以便用户输入字符。一旦用户按回车键创建新的一行,程序就会继续执行。 System.Console.ReadLine()方法的输出,也称为返回值,就是用户输入的文本字符串。下面来看一下代码清单1-13以及输出1-4。

代码清单1-13 使用System.Console.ReadLine()

  1. class HeyYou  
  2.  
  3. {  
  4. staticvoid Main()  
  5.   {  
  6. string firstName;  
  7. string lastName;  
  8.  
  9.       System.Console.WriteLine("Hey you!");  
  10.  
  11.       System.Console.Write("Enter your first name: ");  
  12.       firstName = System.Console.ReadLine();  
  13.  
  14.       System.Console.Write("Enter your last name: ");  
  15.       lastName = System.Console.ReadLine();  
  16.   }  

输出1-4

  1. >HeyYou.exe  
  2. Hey you!  
  3. Enter your first name: Inigo  
  4. Enter your last name: Montoya 

在每条提示信息之后,程序都用 System.Console.ReadLine()方法获取用户输入的文本,并将其赋给恰当的变量。在第二个 System.Console.ReadLine()赋值操作完成之后, firstName引用值 Inigo,而 lastName引用值 Montoya。

高级主题: System.Console.Read()

除了 System.Console.ReadLine()之外,还有 System.Console.Read()方法。但 System.Console.Read()方法返回的是与读取的字符值对应的整数,如果没有更多的字符可用,就返回-1。为了获取实际字符,需要先将整数转型为字符,如代码清单1-14所示。

代码清单1-14 使用System.Console.Read()

  1. int readValue;  
  2. charcharacter;  
  3. readValue = System.Console.Read();  
  4. character = (char) readValue;  
  5. System.Console.Write(character); 

注意,除非用户按回车键,否则System.Console.Read()方法不会返回输入。按回车键之前不会对字符进行处理,即使用户已经输入了多个字符。

C# 2.0以上的版本可以使用 System.Console.ReadKey()方法。它和 System.Console.Read()方法不同,用户每按下一个键就返回用户所按的键。可用它拦截用户按键操作,并执行相应行动,如校验按键,限制只能按数字键。

喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:342347198

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

活学活用 Ubuntu Server

活学活用 Ubuntu Server

实战直通车
共35章 | UbuntuServer

218人订阅学习

Java EE速成指南

Java EE速成指南

掌握Java核心
共30章 | 51CTO王波

83人订阅学习

Mysql DBA修炼之路

Mysql DBA修炼之路

MySQL入门到高阶
共24章 | yeyingcai

472人订阅学习

读 书 +更多

《广域网》

在开始学习WAN资料时,我经常面对资料深度不够或者为电气工程师编写的书。另外,在看了几本书,并且对Internet进行了研究以后,我觉得应当...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO播客