ios - 快速迭代字符长度

标签 ios swift string iteration

我正在制作我的第一个应用程序,它的目的是作为一个密码生成器,并以 1-1000 的范围告诉人们猜测有多难,以及记住有多难关于字母的格式、外观以及大脑如何记住模式。到目前为止,我拥有想要在数组中使用的所有字符,然后我有一个 for in 循环来迭代这些字符,但我无法弄清楚如何指定要生成的密码的长度,因为目前它只是打印每个字符。所以,我问如何才能尽可能简单地制作一个 8 个字符长的密码生成器,到目前为止我所拥有的是:

    import Foundation


    let chars = ["a","b","c","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u"        ,"v","w","x","y","z","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","0","1","2","3","4","5","6","7","8","9"]

谢谢!

    var generate: String

    for generate in chars {
        print(generate)
    }

最佳答案

尽可能简单地使用循环和随机数来获取给定索引处的字符:

let length = 8
var pass = ""
for _ in 0..<length {
  let random = arc4random_uniform(UInt32(chars.count))
  pass += chars[Int(random)]
}

print(pass)

关于ios - 快速迭代字符长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38187827/

相关文章:

iphone - 响应完成按钮 UIKeyboard 的很多不同的 UITextFields

ios - 如何根据用户id存储上传的图片

swift - 在 MusicSequenceUserCallback 中传递的函数参数

MYSQL 查询替换字符串的一部分

ios - 从通知中心iOS删除单个通知

ios - UIButton 无法在第一代 iPad 上激活 'touch up inside',适用于第二代

ios - 在 linux 上为 theos 安装 ldid

macos - 模拟人类鼠标移动

c++ - 十六进制字符串到十六进制字符[]

Java - 正则表达式解析x匹配的出现