官方解释

ReadLine方法以同步方式执行。 即,被阻止,直至读取行或按下 Ctrl + Z 键盘组合。 In属性返回TextReader对象,它表示标准输入的流并具有这两个同步 TextReader.ReadLine方法和异步TextReader.ReadLineAsync方法。 但是,当用作控制台的标准输入流, TextReader.ReadLineAsync同步而不是以异步方式执行,并返回Task仅完成读取的操作后。

如果此方法将引发 OutOfMemoryException异常,而在基础读取器的位置 Stream对象高级的字符的方法是可以读取,但已读入内部的字符数ReadLine缓冲区将被丢弃。 由于不能更改流中读取器的位置,因此已读取的字符是不可恢复,并可以访问仅通过重新初始化 TextReader。 如果流中的初始位置是未知或流不支持查找,基础 Stream还需要重新初始化。 若要避免这种情况并生成可靠的代码,应使用 KeyAvailable属性和ReadKey只读方法和应用商店中预先分配的缓冲区的字符。

如果该方法是从控制台读取输入时按 Ctrl + Z 字符,该方法返回 null。 这使用户以防止进一步的键盘输入时ReadLine在循环中调用方法。 下面的示例阐释了这种情况。

官方示例

using System;public class Example
{public static void Main(){string line;Console.WriteLine("Enter one or more lines of text (press CTRL+Z to exit):");Console.WriteLine();do { Console.Write("   ");line = Console.ReadLine();if (line != null) Console.WriteLine("      " + line);} while (line != null);   }
}
// The following displays possible output from this example:
//       Enter one or more lines of text (press CTRL+Z to exit):
//
//          This is line #1.
//             This is line #1.
//          This is line #2
//             This is line #2
//          ^Z
//
//       >

我的代码 C#

本程序用法:输入10个值,以回车分隔。将逐行输出int型的你刚输入的数字

输入示例

1
22
33
44
55
66
77
88
99
100

输出示例

1
22
33
44
55
66
77
88
99
100

代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace test
{class Program{static void Main(string[] args){输入一行//string value = Console.ReadLine();用标点分开//string[] vals = value.Split(',');输出并转化为int数组//Console.WriteLine("分开展示各值");//int[] num = new int[vals.Length];//for (int i = 0; i < vals.Length; i++)//{//    num[i] = int.Parse(vals[i]);//    Console.WriteLine(string.Format("第{0}个:{1}", i + 1, num[i]));//}int[] a = new int[1000];int i = 0;string str = "";int num = 0;//输入Console.WriteLine("输入10个值,以回车分隔");while (str != null){str = Console.ReadLine();num = int.Parse(str);a[i] = num;i++;if (i == 10) break;}//输出int j;for (j = 0; j < i; j++){Console.WriteLine(a[j]);}}}
}

查看监视
可看到变量的存储方式

C# Console.ReadLine()方法的使用 以及利用其返回值null终止输入相关推荐

  1. java方法的重载与覆盖的返回值类型

    public class A extends B{//下面的是方法的覆盖(重写overRiding)public void riding(){System.out.println("this ...

  2. atitit.架构设计---方法调用结果使用异常还是返回值

    atitit.架构设计---方法调用结果使用异常还是返回值 1. 应该返回BOOL类型还是异常 1 2. 最终会有四种状况,抛出异常.返回特殊值.阻塞.超时 1 3. 异常的优缺点点 1 4. jav ...

  3. 范型方法 范型参数 范型返回值

    Java范型类 public class FanXingClassTest {public static void main(String args[]){Test<Integer> in ...

  4. 前端:JS/32/form对象(表单)(form对象的属性,方法和事件),受返回值影响的两个事件(onclick事件,onsubmit事件),获取表单的元素对象的三种方式,表单的提交和验证方法总结

    form 对象(表单) 一个<form>标记,就是一个<form>对象: 1,form对象的属性 name :表单的名称,主要用来让JS来控制表单: action :表单的数据 ...

  5. 字符串常见方法总结:方法的作用、参数、返回值

    常见的字符串方法: ①.str.charAt(int index):该方法得到指定下标的字符.方法参数为int类型的下标.最终的返回值为char类型字符. 测试用例: String str = &qu ...

  6. 字符串常见方法总结:方法的作用、参数、返回值(构造方法可省略)

    普通方法 1.字符串比较(equals) 当想要比较两个字符串内容是否相等时,必须使用equals()方法而不能使用==关系运算符 public class Main {public static v ...

  7. 根据WebService地址展示方法列表、入参和返回值(解析wsdl)

    项目源码:https://gitee.com/xuchuruo/parsing_wsdl(有些jar包Maven上无法下载) ------------------------------------- ...

  8. 字符串常见方法总结:方法的作用、参数、返回值(构造方法可省略)1. 构造方法2. 静态方法3. 其它方法

    1. 构造方法 String str1= "123abc"; String str2=new String("123abc"); (1)采用方式1为string ...

  9. idea自动生成方法注释(含参数及返回值)

    最近没啥事开始正式用Eclipse 转入 idea工具阵营,毕竟有70%的开发者在使用idea开发,所以它的魅力可想而知.刚上手大概有一天,就知道它为啥取名为 intelli(智能化)了,确实很智能, ...

最新文章

  1. jquery选择器,多个元素+除首个元素+出去首尾元素
  2. 爱奇艺发布2018年Q2财报:总营收62亿元同比大增51%,会员收入达25亿元
  3. 实用VUE 开发插件!!前端必备
  4. Horizon View 6-虚拟桌面模板制作⑶
  5. 权限表使用联合主键吗_天天写 order by,你知道Mysql底层执行流程吗?
  6. MongoDb 大数据查询优化、 MongoDB 索引、复合索引、唯一索引、 explain 分 析查询速度
  7. 当配置 DispatcherServlet拦截“/”,SpringMVC访问静态资源的三种方式
  8. 28. (附加)八皇后问题(C++版本)
  9. vncviewer远程连linux白屏,vncviewer远程链接桌面linux
  10. TPC-DS标准规范(2)
  11. 101到200之间有多少个质数/素数 -java编程
  12. JS求最小公倍数(高效算法1-短除法)
  13. Docker镜像的制作、上传、拉取和部署(利用阿里云)
  14. python爬取问卷星内容,Python 问卷星自动填写 爬虫
  15. 一切笔直都是骗人的 —— 2020 年产品沉思录卷首语摘录
  16. 微信小游戏|unity搭建3D篮球小游戏场景
  17. VR全景展示汉服文化,3D环物立体式欣赏做工
  18. 怎样去除桔梗导航劫持主页
  19. 很燃基于掘金量化平台的《Python化易战新书介
  20. 文件误删一键恢复办法

热门文章

  1. 太阳能充电调节代码_太阳能LED路灯控制器有什么作用
  2. TCP长连接,短连接
  3. SqlServer安装出错解决办法
  4. WebRTC 的传输协议
  5. C++ lambda 捕获模式与右值引用
  6. 关于 adb shell error: no devices/emulators found 的解决方案
  7. Linux调度系统全景指南(下篇)
  8. Leetcode-Median of Two Sorted Arrays
  9. Python中的协程
  10. AOM Summit 来了