在阵列
问题描述:
func randomStringWithLength (len : Int) -> NSString {
let answer : NSString = ArrAnswer.objectAtIndex(0) as! NSString
let letters : NSString = answer
print(letters)
let randomString : NSMutableString = NSMutableString(capacity: len)
for (var i=0; i < len; i++){
let length = UInt32 (letters.length)
let rand = arc4random_uniform(length)
randomString.appendFormat("%C", letters.characterAtIndex(Int(rand)))
}
return randomString
}
的索引创建随机字符串我已经尝试此, 一些后者缺少在每次转换后的字符串或一段时间内打印一后两次或三次的时间。在阵列
答
我不知道究竟你需要的。如果你需要在随机字符串中的字符,你可以使用类似这样
import Foundation
let str = "abcdef"
// returns string with random order of characters
func randomize(str: String)->String {
var chars = str.characters.map{ $0 }
let c = UInt32(chars.count)
if c < 2 { return str}
for i in 0..<(c - 1) {
let j = arc4random_uniform(c)
if i != j {
swap(&chars[Int(i)], &chars[Int(j)])
}
}
return chars.reduce("", combine: { (str, c) -> String in
str + String(c)
})
}
for i in 0...10 {
print(randomize(str))
}
/* prints
dcbeaf
edcabf
cebadf
adcbef
dacbef
dceabf
eacbdf
adebcf
adcbef
bedcaf
daebcf
*/
答
我觉得这是做的最好办法,除非otherone有另外一种方法,你可能需要适应此代码为您necesities:
let array = ["Frodo", "sam", "wise", "gamgee"]
let randomIndex = Int(arc4random_uniform(UInt32(array.count)))
print(array[randomIndex])
我想转换像串的指数“弗罗多”我不明白随机指标。 – Rock