零基础学习c#-2 字符串输出

本文介绍了C#中的字符串输出,包括占位符的概念和使用,如何处理特殊字符如{}和",以及如何进行字符串格式化。通过示例展示了String.Format方法和不同格式化选项,如E、F、N的用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

接回前文,关于输出中的{0}

它有个准确的名字——占位符(对标c语言中的%s\%d等格式转换符)

占位符用大括号括起来。里边标上数字,表示是第几个占位符。如果输出时使用复数个占位符,里面的数字注意是从0开始的,不是从1开始的。例如

  Console.WriteLine("零基础学习{0}编程","C#"}。它会输出“零基础学习C#编程”。

  Console.WriteLine("零基础学习{0}编程,{1}","C#","乌拉"}。它会输出“零基础学习C#编程,乌拉

如果这样

就会报错

相类似的,当你在输出字符串中定义多个占位符,而后面所跟的实际取代值少于其定义的,也会报错

结果

 但笔者在之前实验过当第一个占位符写出{00000},并不会报错,当你不管填多少个零,只要它的所表示的是第一个替换位置,那么便不会有问题。而一旦大于0的数字填上去,则会严格遵照位置,一一替换。也可以在输出字符串时,将数字大的占位符写在数字小的前面,这个虽说感觉鸡肋,但着实比"%d"好。

 输出

 值得注意的是,如果你需要输出{}符号时,在双引号,即字符串中直接输出将会报错

需要对其特殊处理化

将它{ }引出来才能正确输出

而另一个符号同样需要麻烦一点,那就是" "双引号

可以输出的表示有

 用   \"  取代单独的  "

 

用@写于整个输出字符串前,"" 取代 " 使用

结果一致为

但鱼和熊掌不可兼得,会报错

 

我们继续深入,字符串的输出

相信学过Java甚至c语言的同志都不会陌生于用加号键组合字符串并输出

 这是简单朴实的一种输出方法,同样在从c#中运用得到

我们则可以学习字符串格式化输出,string.Format

 

同样需要用到占位符取代字符,将结果赋值给result,再通过WriteLine输出。这样是不是多次一举呢?

当然不是,String.Format和WriteLine都遵守同样的格式化规则。格式化的格式如下:

"####{ N [, M ][: formatString ]}", arg1, ... argN

字母解释:

N是你需要替换的字符有多少个,{}中的是如上文所说

M是表示格式化后的参数所占的宽度,如果M是负数,那么格式化后的值就是左对齐的,如果M是正数,那么格式化后的值是右对齐的。一般用不上

:formatString,通常象X0这样的格式。X是格式化标识符,0是精度标识符。如果没有它,那么就用参数N对应的替换值的ToString方法来格式化

值得关注的是E、F、N

int i=123456;

Console.WriteLine("{0:E5}", i); //输出    1.23456E+005,为科学计数格式

Console.WriteLine("{0:F5}", i); // 输出   123456.00000,为小数后的精度为5的格式

Console.WriteLine("{0:N}", i); //输出      123,456.00,为以千为单位,将数字分割。

有些迷的是 D

分别输出为

 

 

 

了解更多

C# 格式化字符串 - Avatarx - 博客园 (cnblogs.com)

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值