我正在尝试计算文本字段中输入的字符串内的数字,这是我的代码
var num = 0
.
.
.
let stringArray = password.components(separatedBy: CharacterSet.decimalDigits.inverted)
for item in stringArray {
if let number = Int(item) {
print("number: \(number)")
num += 1
}
}
if num > 4 {
print("You Shall Pass!!")
}
else {
print("You Shall Not Pass!!")
}
Run Code Online (Sandbox Code Playgroud)
但是当我打印数字时,它保持在1。无论我在文本字段中输入多少数字,它总是会打印1并且“你不应该通过!”
这是一个更简单的方法。改变这一行,
let stringArray = password.components(separatedBy: CharacterSet.decimalDigits.inverted)
Run Code Online (Sandbox Code Playgroud)
到,
let stringArray = password.components(separatedBy: CharacterSet.decimalDigits)
Run Code Online (Sandbox Code Playgroud)
现在位数比 中的元素数少一位stringArray。所以你可以直接使用它。
if (stringArray.count - 1) > 4 {
print("You Shall Pass!!")
} else {
print("You Shall Not Pass!!")
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
715 次 |
| 最近记录: |