C# 控制台:Console.ReadLine / WriteLine

一、Console.WriteLine vs Console.Write 的区别

WriteLine 自动换行

cs 复制代码
Console.WriteLine("Hello");
Console.WriteLine("World");

// 输出 

Hello
World

Write 不换行

cs 复制代码
Console.Write("Hello ");
Console.Write("World");

// 输出

Hello World

二、Console.ReadLine

cs 复制代码
string input = Console.ReadLine();

ReadLine 会阻塞线程,程序会停在这里,知道用户按下回车键。

ReadLine 返回值可能为空,需要做非空判断;必要时也需要做数据类型转换。

三、Console.ReadKey

读取单个按键,默认会明文显示,不显示需要传入参数 true

cs 复制代码
Console.Write("请输入密码:");

string password = "";
ConsoleKeyInfo key;

while ((key = Console.ReadKey(true)).Key != ConsoleKey.Enter)
{
    password += key.KeyChar;
    Console.Write("*");
}

Console.WriteLine();

四、格式化输出

  • 字符串插值
cs 复制代码
Console.WriteLine($"姓名:{name},年龄:{age}");
  • 对齐输出
cs 复制代码
Console.WriteLine("{0,-10} {1,5}", "Name", "Age");
Console.WriteLine("{0,-10} {1,5}", "Tom", 18);
Console.WriteLine("{0,-10} {1,5}", "Alice", 25);
  • 设置控制台颜色,显得专业
cs 复制代码
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("成功");

Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("失败");

Console.ResetColor();
相关推荐
为何创造硅基生物4 小时前
C语言 结构体内存对齐规则(通俗易懂版)
c语言·开发语言
吃好睡好便好4 小时前
在Matlab中绘制横直方图
开发语言·学习·算法·matlab
星寂樱易李5 小时前
iperf3 + Python-- 网络带宽、网速、网络稳定性
开发语言·网络·python
仰泳之鹅5 小时前
【C语言】自定义数据类型2——联合体与枚举
c语言·开发语言·算法
之歆5 小时前
DAY_12JavaScript DOM 完全指南(二):实战与性能篇
开发语言·前端·javascript·ecmascript
cen__y6 小时前
Linux12(Git01)
linux·运维·服务器·c语言·开发语言·git
AI人工智能+电脑小能手6 小时前
【大白话说Java面试题 第65题】【JVM篇】第25题:谈谈对 OOM 的认识
java·开发语言·jvm
社交怪人7 小时前
【算平均分】信息学奥赛一本通C语言解法(题号2071)
c语言·开发语言
郭涤生8 小时前
不同主机之间网络通信-以太网连接复习
开发语言·rk3588
山居秋暝LS8 小时前
【无标题】RTX00安装paddle OCR,win11不能装最新的,也不能用GPU
开发语言·r语言