如何在Swift中将UITextField中的数据用作数组?

时间:2019-06-05 17:03:42

标签: ios arrays swift uitextfield

如何在Swift中将UITextField中的数据用作数组?示例:我在ViewController中创建了UITextField,用户在其中插入了“ 1、3、8、9、10、20”(不带“”)。如何在Swift 4和/或5的编程中将这些信息转换为Array?

要得到的结果:

var arrayInt: [Int] = [mytextField]
arrayInt = [1, 3, 8, 9, 10, 20]

2 个答案:

答案 0 :(得分:1)

如果Character split属性为false,则可以使用isWholeNumber方法,并将结果元素映射到Int:

let numbers = textField.text!.split{!$0.isWholeNumber}.compactMap({Int($0)})
numbers  // [1, 3, 8, 9, 10, 20]

答案 1 :(得分:0)

获取UITextField上的文本,并使用带有分隔符的.split()方法。

"1, 3, 8, 9, 10, 20".split(separator: ",")

这将为您提供一个包含所有数字的String数组,您只需要将它们转换为Ints。

根据要求进行了完全编辑:

.replacingOccurrences(of: " ", with: "").split(separator: ",").compactMap({Int($0)})