我对在 swift 中使用整数作为键感到困惑。有人可以解释它是如何工作的以及它会返回什么值吗?我希望它能够返回与字典或数组中的键关联的整数,但不明白它如何为字符串返回整数?
import Foundation
// adopted by delegate so it can be notified when settings change
protocol ModelDelegate {
func settingsChanged()
}
class Model {
private let regionsKey = "FlagQuizKeyRegions"
private let guessesKey = "FlagQuizKeyGuesses"
// reference to QuizViewController to notify it when settings change
private var delegate: ModelDelegate! = nil
var numberOfGuesses = 4 // number of guesses to display
private var enabledRegions = [
"Africa" : false,
"Asia" : false,
"Europe" : false,
"North_America" : true,
"Oceania" : false,
"South_America" : false
]
// variables to maintain quiz data
let numberOfQuestions = 10
private var allCountries: [String] = [] // list of all flag names
private var countriesInEnabledRegions: [String] = []
// initialize the settings from the app's NSUserDefaults
init(delegate: ModelDelegate, numberOfQuestions: Int) {
self.delegate = delegate
// get the NSUSerDefaults object for the app
let userDefaults = NSUserDefaults.standardUserDefaults()
// get number of guesses
let tempGuesses = userDefaults.integerForKey(guessesKey)
if tempGuesses != 0 {
numberOfGuesses = tempGuesses
}
最佳答案
它将为一个字符串的键返回一个整数。所以让我们说:
let myKey = "Countries"
let myCountries = ["USA","Brazil","Japan"]
NSUserDefaults.standardUserDefaults().setInteger(myCountries.count, forKey: myKey)
let numberOfCountries = NSUserDefaults.standardUserDefaults().integerForKey(myKey) // 3
关于ios - 将 integerForKey 与字符串 swift 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28653871/