我想知道打印中的分隔符和终结符有什么区别?



我想知道这个打印的东西。您可能会注意到此代码概念与此代码概念不同。

print(1, 2, 3, 4, 5, separator: "...")
//1...2...3...4...5

for n in 1...5 {
print(n, separator: " ", terminator: "...")
}
// 1...2...3...4...5...

我认为分隔符应该是为每个项目添加文本的空间,但终止符默认为已知的换行符,如果您也使用 swift 游乐场,您可以看到换行符。如果将这三个句点放在分隔符上,则无法显示"..."。在循环上,但打印可以。我对这段代码有点困惑。所以让我知道这段代码。可能我在这些事情上错了。我正在学习 Swift。

print(_:separator:terminator:)方法所述:

分隔符:在每个项目之间打印的字符串。

终止符:打印完所有项目后要打印的字符串。

这是每次调用print。因此,仅当您向print提供多个值时,separator才有用。

print(arg1, arg2, ..., argN, separator: someSeparator, terminator: someTerminator)

这导致:

arg1 someSeparator arg2 someSeparator ...someSeparator argN someTerminator

(但没有我为清楚起见添加的空格)。

当您只打印一个值时,例如在问题中的代码中,根本不使用separator,因此您只会在打印的每个值的末尾看到终止符。

代码如下:

print(1, 2, 3, 4, 5, separator: " ", terminator: "...")

将给出您似乎正在寻找的结果:

1 2 3 4 5...

separator是在给定打印的数值之间要打印的文本。terminator是打印完所有值后要打印的文本。所以:

print(val1, val2, val3, ..., separator: "<SEP>", terminator: "<TERM>")

将打印

val1<SEP>val2<SEP>val3<SEP>...<TERM>

如果只给print一个值,那么它不会打印分隔符,因为它没有什么可分离的!(不要将一个值与自身分开)。但它将打印给定的终止符(或默认终止符,如果未提供)。

因此,

print(1, 2, 3, 4, 5, separator: "...")
//1...2...3...4...5

将打印值 1、2、3、4、5,以"..."并由默认终止符终止, 和

for n in 1...5 {
print(n, separator: " ", terminator: "...")
}
// 1...2...3...4...5...

将打印从 1 到 5 的每个数字,每个数字后...文本,以及 不会打印分隔符,因为打印只给定一个要打印的值。

相关内容

  • 没有找到相关文章

最新更新