0
Я смущен тем, что использую integer для ключа в swift. Может ли кто-нибудь объяснить, как это работает и какое значение оно вернет? Я ожидаю, что он сможет вернуть целое число, связанное с ключом в словаре или массиве, но не понимает, как он вернет целое число для строки?using integerForKey со строками 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
}