随便玩玩之C#-3 输出
随便玩玩之C#-3 输出
所谓的输出就是程序向屏幕上给出结果,这一节主要是强化一下WriteLine()方法。
输出?在哪儿输出?答:在屏幕上输出。废话,这大家都知道啊。
程序 有很多中,控制台,带界面的,网页,手机APP等等。不管是什么程序,执行相应的输出语句就可以实现。
1.修改输出内容
注意第一个程序代码中,执行输出的语句是Console.WriteLine(
"Hello World!"
)
,表示在控制台输出字符串HELLO WORLD!.
如果我想显示别的内容呢,修改双引号里的内容即可,中英文都可以。
using System; namespace ConsoleApp13 { class Program { static void Main(string[] args) { //修改输出字符 Console.WriteLine("*************************"); Console.WriteLine("Hello World!"); Console.WriteLine("你好世界"); Console.WriteLine("白日依山尽,"); Console.WriteLine("黄河入海流"); Console.WriteLine("*************************"); } } }
运行结果:
2.换行输出。
输出自己想要的内容如此简单。但你也注意到了白日依山尽黄河入海流写在两行上了,而且每一行语句都是只输出在一行上。那么想让白日依山尽黄河入海流输出在一行上有什么办法?
可以尝试一下Console.Write()方法,这个方法与
Console.WriteLine()的区别就是一个输出完毕不换行,一个换行。
using System; namespace ConsoleApp13 { class Program { static void Main(string[] args) { //修改输出字符 Console.WriteLine("*************************"); Console.Write("银角大王对悟空说:"); Console.Write("“我也不与你交兵,我且叫你一声,你敢应我么?”"); Console.Write("\n"); Console.Write("行者道:\n"); Console.Write("“可怕你叫上千声,我就答应你万声!”\n"); Console.WriteLine("*************************"); } } }
执行结果:
很明显,一个不会自动换行,一个会自动换行。
虽然Console.Write
()不会自动换行,可以在语句中输出一个换行字符用来换行,\n就是换行字符的转义字符。\n可以放在双引号内的任何地方,只要遇到\n转义字符,输出结果就会从下一行开始继续。
C#代码中凡是使用双引号引住的都是字符串,都可以在程序中显示出来,上面的对话中虽然有双引号,不过那是中文全角的标点符号,不属于代码的部分。
那如果想输出英文半角引号呢,直接在双引号直接加入引号会提示错误。可以使用转移字符\"来输出英文半角引号。
using System; namespace Quotation { class Program { static void Main(string[] args) { Console.WriteLine("*************************"); Console.WriteLine("使用转移字符输出英文半角引号"); Console.WriteLine("\"Make American Great Again!\""); Console.Write("Trump say that:\n"); Console.Write("\"MAGA! MAGA! MAGA!\"\n"); Console.WriteLine("*************************"); } } }
结果:
3.输出数字
数字加双引号是字符串,当作字符串输出。数字不加引号是数值,可直接输出。输出数字时,可以进行数学运算。
using System; namespace Number { class Program { static void Main(string[] args) { Console.WriteLine("*************************"); Console.WriteLine("输出数字"); Console.WriteLine("123456"); //这些数字是字符串 Console.WriteLine(123456); //这些数字是数值 // “\t”为制表符转移字符,这里只是用来对齐 Console.Write("执行数学运算,加法,结果为3。 \t\t\t\t 1+2="); Console.Write(1 + 2); //运算表达式 Console.Write("\n"); //换行 Console.Write("执行数学运算,乘法,结果:6。 \t\t\t\t 2*3="); Console.Write(2*3); //运算表达式 Console.Write("\n"); Console.Write("执行数学运算,减法,结果:5。 \t\t\t\t 6-1="); Console.Write(6-1); //运算表达式 Console.Write("\n"); Console.Write("执行数学运算,除法(求两个数相除的商),结果:5。 \t 17/3="); Console.Write(17/3); //运算表达式 Console.Write("\n"); Console.Write("执行数学运算,取模(求两个数相除的余数),结果:2。 \t 17%3="); Console.Write(17%3); //运算表达式 Console.Write("\n"); Console.WriteLine("*************************"); } } }
结果:
4.占位符输出
所谓的占位符输出,就是在一串字符串中留个位置,可以让程序填入需要的值。
使用占位符就需要在Console.WriteLine()方法的括号中填入多个参数,第一个参数是字符串,其中包含占位符,紧接一个逗号,作为占位符的值。
如果有多个引用的值,就用逗号分开。同一个值可以重复引用。
引用的值之间不分顺序,只要在字符串中确定引用的值的索引序号即可。索引用{数字}表示,数字从0开始计数,引用第几个值就填入第几个值的索引值。
引用的值可以是字符串,可以是数字,可以是运算表达式,可以是方法(函数),总之只要是个结果就可以。
using System; namespace Placeholder { class Program { static void Main(string[] args) { Console.WriteLine("*************************"); Console.WriteLine("占位符输出"); Console.WriteLine("这位同学叫{0},成绩是{1}分。","小明",90); Console.WriteLine("特朗普大声说到{1},后来就失去理智地像鸭子一样喊这{0},{0},{0}", "MAGA!", "Make America Great Again"); Console.WriteLine("--------------------------"); Console.WriteLine("2+3={0}", 2 + 3); Console.WriteLine("2*3={0}", 2*3); Console.WriteLine("2-8={0}", 2 -8); Console.WriteLine("17/3={0}", 17/3); Console.WriteLine("17%3={0}", 17%3); Console.WriteLine("--------------------------"); Console.WriteLine("今天是{0}", DateTime.Now.ToString()); Console.WriteLine("*************************"); } } }
结果:
你是否已经发现第12行和第13行语句太长进行了换行。第一个逗号前面的字符串还是太长。想把它写在两行上,有什么办法?
字符串可以分开写,甚至一个字一行,只需要使用字符串连接符+(加号)连接起来就行。加号在数字中间做运算符号,在字符串中间作连接符,将两个字符串合并。
using System; namespace Concatenate { class Program { static void Main(string[] args) { Console.WriteLine("*************************"); Console.WriteLine("字符串连接"); Console.WriteLine("特朗普大声说到{1}," + // +加号,字符串连接 "后来就失去理智地像鸭子" + // +加号,字符串连接 "一样喊着{0},{0},{0}", "MAGA!", "Make America Great Again"); Console.WriteLine("*************************"); } } }
结果:
5.WPF中的输出控件LABEL
新建一个WPF项目,解决方案命名为WPFLabel。将工具箱中的Label控件拖放到WPF设计器的空白区域。选中WPF设计器中Label控件,将其名称修改为MagaLabel,修改其属性Content值为MAGA。按F5或者CTRL+F5运行。
结果如下:
Label标签为文本标签,用于显示字符串。控制显示内容的属性是Content。
还有其他属性值,FontSize可设置字体大小,FontStyle可设置字体风格(斜体)还有其他属性,可在MSDN文档中查看具体属性名称。
在WPF控件属性中,各个属性按组进行了分类,文字颜色在画笔组里,文字样式在文本组里,显示的文本内容在公共组里设置。
也可以在代码中设置属性。
控制台中的字体能不能设置字体风格和颜色?可以的。现在先不考虑那些。
MSDN文档
Console.WriteLine 方法
https://docs.microsoft.com/zh-cn/dotnet/api/system.console.writeline?view=net-6.0
Label控件的详细信息参见MSDN文档。
https://docs.microsoft.com/zh-cn/dotnet/api/system.windows.controls.label?view=net-6.0
本节就这些吧,多了脑袋要炸。
--EOF--