控制台文本输出

Console 类

System 命名空间,属于 .NET 基础类库(BCL)

控制台窗口读写文本,提供两类输出方法:Write() / WriteLine()

在VS中,可以把光标放到Console上面,然后按F12,可以查看这个Console

然后,会进入到Console的元数据查看(这是不是源码,是VS自带的反编译功能,可以看到这个类 的方法,类名,参数这些)

在Console中,我们可以看到Write() / WriteLine() 这些函数,给我们调用。

Console.Write ()

输出文本后不自动换行,多条连续输出会拼接在同一行

            // 简写(上面引入了 using System 这里可以省略System.)
            Console.Write("Hello erveryone.");

            // 完整写法
            System.Console.Write("This is foxdevelop.");
            System.Console.Write("This is com.");
            System.Console.Write("good luck.");Code language: C# (cs)

把以上代码复制到Main函数里面去 执行。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HelloDemo
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 简写(上面引入了 using System 这里可以省略System.)
            Console.Write("Hello erveryone.");

            // 完整写法
            System.Console.Write("This is foxdevelop.");
            System.Console.Write("This is com.");
            System.Console.Write("good luck.");
        }
    }
}Code language: C# (cs)

输出结果

Hello erveryone.This is foxdevelop.This is com.good luck.Code language: CSS (css)

文本字面量必须用双引号包裹,单引号不可用。

Console.WriteLine ()

Write 功能一致,输出末尾自动追加换行符,每条输出独占一行。

也就是每次它输出后,光标会回车,然后到达下一行,等待下次输出。

            Console.WriteLine("Hello erveryone.");

            Console.WriteLine("This is foxdevelop.");
            Console.WriteLine("This is com.");
            Console.WriteLine("good luck.");Code language: C# (cs)

输出结果

这次换行了,因为每次输出后,光标到下一行了。

格式化字符串

(老式占位语法,主流旧项目在用)

  • 方法参数格式:Console.WriteLine(格式字符串, 替换值0, 替换值1, ...)
  • 第一个参数固定为格式字符串,用 {数字}替换标记
  • 标记数字从 0 开始,对应后面依次传入的替换值
  • 多参数用逗号分隔
        static void Main(string[] args)
        {
            Console.WriteLine(" {0} + {1} = {2}", 9, 6,9 + 6);
        }Code language: C# (cs)

输出结果

 9 + 6 = 15

上面的第一个字符串” {0} + {1} = {2}”,有三个占位符,里面的是序号,对应后面的三个参数,分别是9、 6 、6+9的结果是15,然后把这三个值替换到{0} 、 {1} 、 {2}这三个位置。

字符串插值

C# 6.0+ 新语法,非常好用,之间在占位符里面写变量

字符串前加 $ 符号启用插值 大括号 {}直接写变量名,编译器自动替换变量值,无需额外传参

        static void Main(string[] args)
        {
            double pi = 3.14;
            string webSite = "foxdevelop.com";
            Console.WriteLine($"The Pi is {pi} and the website is {webSite}.");
        }Code language: C# (cs)

输出结果

The Pi is 3.14 and the website is foxdevelop.com.Code language: CSS (css)

多变量

如下例子,在一个字符串模板中,有多个变量占位符

int latitude = 36;
int longitude = 17;
string north = "N", east = "E", south = "S";
Console.WriteLine($"纬度 {latitude}{north}, 经度 {longitude}{east}");
Code language: JavaScript (javascript)

执行结果

纬度 36N, 经度 17E

注意点

复杂插值容易写错变量顺序,新旧两种语法都要掌握,目前还有很多项目是使用旧的语法写法的。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注