我一直在环顾四周,但很难找到这个问题的答案,因为我正在寻找的东西是如此不具体。
我已经看到了很多在其中使用的代码,{0}
但我仍然无法弄清楚它在做什么。这是一个例子:
Dim literal As String = "CatDogFence"
Dim substring As String = literal.Substring(6)
Console.WriteLine("Substring: {0}", substring)
我一直在环顾四周,但很难找到这个问题的答案,因为我正在寻找的东西是如此不具体。
我已经看到了很多在其中使用的代码,{0}
但我仍然无法弄清楚它在做什么。这是一个例子:
Dim literal As String = "CatDogFence"
Dim substring As String = literal.Substring(6)
Console.WriteLine("Substring: {0}", substring)
Console.WriteLine("Substring: {0}", substring)
是相同的
Console.WriteLine("Substring: " & substring)
使用时Console.WriteLine
,{n}
会将n
第 th 个参数插入到字符串中,然后写入。
在这里可以看到一个更复杂的例子:
Console.WriteLine("{0} {1}{2}", "Stack", "Over", "flow")
它将打印Stack Overflow
.
Console.WriteLine() 和 String.Format() 使用该语法。它允许您将变量注入字符串,例如:
dim name = "james"
String.Format("Hello {0}", name)
该字符串将是“Hello james”
使用 Console.Writeline:
Console.WriteLine("Hello {0}",name)
那将写“你好詹姆斯”
这是一个占位符。从第二个参数(在您的情况下为子字符串)开始,它们按给定顺序包含在给定字符串中。这样,您可以避免使用 + 运算符进行长字符串连接,并且可以更轻松地进行语言本地化,因为您可以将包括占位符在内的竞争字符串拉到某些外部资源文件等。
它被称为复合格式,并被许多方法支持,Console.WriteLine 就是其中之一。除了索引占位符之外,还有其他可用的功能。这是一个文档链接,其中显示了复合格式的其他一些功能。