C#中 s +=string.Format("0,1*1,1=2,-4",j,i,j*i)是啥意思?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#中 s +=string.Format("0,1*1,1=2,-4",j,i,j*i)是啥意思?相关的知识,希望对你有一定的参考价值。
这是在做九九乘法表时用到的一个语句,具体是什么意思?请高手详细点说明白,小弟感激涕零!
s+=
(string.format("0*1=2",
i,
j,
i
*
j)).padright(8);
分解开来
一
string.format("0*1=2",
i,
j,
i
*
j)
string.format是格式化字符串,0代表字符串后边第一个参数,就是i,1第二个,2第三个
比如i=2,j=3的话,string.format("0*1=2",
i,
j,
i
*
j)
=
"2*3=6"
二
padright(8)向右补足字符串,比如刚才的字符串"2*3=6"长度为5,则在右边补3个空格,达到长度为8:"2*3=6
"
三
s
+=
xxx
相当于
s
=
s
+
xxx
---------------
合起来就是...
s赋值为原值加上
"i*j=结果"补足到八位长 参考技术A "0,1*1,1=2,-4"
每一个大括号叫做复合格式设置字符串
每个格式项都采用下面的形式并包含以下组件:
索引[,对齐][:格式字符串]
按照这个定义就可以知道他的含义了先翻译一下
j,1*i,1=j*i,-4
下面就看,后面的含义了,知道了他是对齐的意思,那么具体是怎么对齐的呢?
对齐组件
可选的“对齐”组件是一个带符号的整数,指示首选的设置了格式的字段宽度。 如果“对齐”值小于设置了格式的字符串的长度,“对齐”会被忽略,并且使用设置了格式的字符串的长度作为字段宽度。 如果“对齐”为正数,字段中设置了格式的数据为右对齐;如果“对齐”为负数,字段中的设置了格式的数据为左对齐。 如果需要填充,则使用空白。如果指定“对齐”,就需要使用逗号。
根据上面的我们就知道了
j,1*i,1=j*i,-4他的意思就是
j的值占1位右对齐
i的值占1位右对齐
j*i的值占4位左对齐,
就可以看到的结果是,设j=8,i=9
8*9=72空格空格本回答被提问者采纳 参考技术B 0,1表示后面的第一个参数,所占得位数是一个字符,并且靠右对齐;
1,1表示后面的第二个参数,所占的位数是两个字符,并且靠右对齐;
2,-4表示后面的第三个参数,所占位数是四个字符,并且靠左对齐;
最后是把得到的格式化字符和S拼接起来了 参考技术C 0代表后面第一个参数,也就是j的值,1代表后面第二个参数,也就是后面的i,具体这句话什么意思,自己再看看吧
C# 中字符格式化多个括号报错
string s = "0"
string ss = string.Format(s,1)
上面情况运行会出现崩溃
修改方式:将单独拿出来
string s = "0"
string ss = string.Format(s,1)
s = s + ""
以上是关于C#中 s +=string.Format("0,1*1,1=2,-4",j,i,j*i)是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章