我正在使用Swift制作一个数学问题应用程序我为随机数制作了一个生成器,但是当我运行它时它不起作用。我希望随机数显示在标签中。
我的代码是:
var randomnumber = arc4random() % 10
randomnumber = QuestionLabel.text
如何对其进行编码,以便使用字符串格式进行转换。感谢
答案 0 :(得分:1)
看起来您正在尝试将标签文本分配给随机数。这是错误的方法。您还需要将数字转换为字符串,您可以使用String interpolation在Swift中轻松完成此操作:
var randomnumber = arc4random() % 10
QuestionLabel.text = "\(randomnumber)"
旁注QuestionLabel
不应该有大写的Q,因为它不是指类。
答案 1 :(得分:0)
要从任何类型生成字符串,您可以使用toString
(1.2或更早版本)或2.0版String.init
。
另请注意,您应使用arc4random_uniform(n)
而不是arc4random() % n
来避免模偏。
所以:
let randomNumber = arc4random_uniform(10)
QuestionLabel.text = String(randomNumber) // in 2.0
// or
QuestionLabel.text = toString(randomNumber) // in 1.2
或者,如果您不需要其他任何数字,只需要一些文本,您可以跳过临时步骤并直接使用字符串插值表达式:
QuestionLabel.text = "\(arc4random_uniform(10))"