如何在Swift中打印多个变量的实例

3
在Swift中,如何多次打印变量。假设我有以下代码:
var symbol = "*"

我能否在IT技术中做类似JavaScript的操作,如下所示:

console.log(symbol * 4)

当我尝试用Swift实现时,会返回一个错误。有什么解决方法吗?

2
顺便问一下,在 JavaScript 中,console.log(symbol * 4) 输出的是 NaN,对吧? - rintaro
@rintaro 也许OP在想Python - 这是我所知道的唯一允许你对字符串进行乘法运算的编程语言 :D - Quack E. Duck
5个回答

2
你可以很容易地创建一个运算符重载,使其能够工作。
func * (left: String, right: Int) -> String {
    var multipliedString = left
    for x in 1..<right {
        multipliedString += left
    }
    return multipliedString
}

把它放在你的类上面,然后你就可以做类似这样的事情:
println("Hello World" * 1000)

2

Swift中没有内置的运算符来实现这个功能。

你可以使用Repeatjoin代替。

var symbol = "*"
println(join("", Repeat(count: 4, repeatedValue: symbol)))

Repeat(count: 4, repeatedValue: symbol) 实际上 创建了[symbol, symbol, symbol, symbol],然后join("", ...)使用分隔符""将它们连接在一起。


2

结合rintaroJeremy Pope提出的解决方案,您可以完全实现所需功能:

func * (left: String, right: Int) -> String {
    return join("", Repeat(count: right, repeatedValue: left))
}

var symbol: String = "*"
println(symbol * 4)

0

var symbol = "*"

print(String(repeating: symbol, count: 4))

// "****"

变量符号=“*”

打印(String(repeating:symbol,count:4))

//“****”


0

你可以试试这个 - println(String(count: 4, repeatedValue: Character("*")))


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接