我正在尝试从具有异常的数组中选择一个随机元素。
例如,假设我有一个长度为10的布尔数组,其中2个在随机索引处设置为true。如何选择随机的假布尔值并将其设置为true?
我希望这不是太模糊,英语不是我的第一语言。
答案 0 :(得分:1)
有很多方法可以做到这一点。我遇到两种主要方法:
你可以使用一个选择随机索引的while循环,直到它找到一个错误:
return
或者您可以仅从错误的索引创建一个新数组(或ArrayList),然后从该数组中随机选择:
var chmplist = 0
if let path = NSBundle.mainBundle().pathForResource("data", ofType: "json") {
if let data = NSData(contentsOfFile: path) {
let json = JSON(data: data, options: NSJSONReadingOptions.AllowFragments, error: nil)
print (json["keys"]["117"]) // this print Moha
chmplist = (json["keys"].count) // this print number of keys
}
}
return chmplist
请注意,您已使用processing标记标记了自己的问题,因此我在此处使用了处理语法。但这些方法在一般意义上也是有效的。