Swift如何在文本字段中输出int值



好吧,我正在构建一个应用程序,它使用文本字段接收一系列int值,并根据初始化的密码对其进行加密。最初,我使用.toInt()函数将数值字符串值转换为整数数组。然后,我将密码添加到整数数组中的每个值,但是我很难将int数组输出回具有加密序列的文本字段。我已经对此进行了彻底的研究,似乎找不到足够的函数来将我的int数组(名为:code)转换回一个字符串,我可以将其初始化为message1.text=字符串数字序列。

这是我到目前为止的代码:

类ViewController:UIViewController{

@IBOutlet var text: UITextField!
@IBOutlet var Lable: UILabel!
@IBOutlet var Button: UIButton!
@IBOutlet var message1: UITextField!
@IBOutlet var Button2: UIButton!
var name = 0
@IBAction func Button(sender: UIButton) {
name = text.text.toInt()!
}

@IBAction func Button2(sender: UIButton) {
var code = Array (message1.text).map{String($0).toInt()! }

for var n = 0 ; n < code.count; n++
{
code[n] = code[n] + name
}
var StringArray = (code : String()) // This is the mistake, I want to convert the code array into a joint string,
message1.text = StringArray


}

我已经知道我试图做的事情不起作用,因为当我运行应用程序并按下按钮2时,文本字段中根本没有文本,因此字符串数组没有按预期初始化是合理的。非常感谢您的帮助。谢谢您抽出时间。我刚开始应用程序内编程,但我仍在为相对简单的事情而挣扎,所以我理解答案是否过于明显。

您所需要做的就是将值重新映射回字符串并连接它们:

var stringOfCodes = "".join( code.map { "($0)" } )

这将为您提供代码值中的单个字符串。我觉得有一种更优雅的方式可以实现这一点,但这就是我立刻想到的。

如果您想从数组中创建字符串:

var spaceSeparatedString = " ".join(StringArray)

这将使用空格作为分隔符从数组中创建一个字符串。例如:"字符串1字符串2字符串3"。

最新更新