के लिए स्विफ्ट 3 और स्विफ्ट 4।
सरल तरीका: हार्ड कोडित। केवल उपयोगी अगर आप सटीक मात्रा में आने वाले पूर्णांक को जानते हैं, तो गणना करना और मुद्रित/आगे बढ़ना चाहते हैं।
let string98: String = "98"
let string99: String = "99"
let string100: String = "100"
let string101: String = "101"
let int98: Int = Int(string98)!
let int99: Int = Int(string99)!
let int100: Int = Int(string100)!
let int101: Int = Int(string101)!
// optional chaining (if or guard) instead of "!" recommended. therefore option b is better
let finalInt: Int = int98 + int99 + int100 + int101
एक समारोह के रूप
print(finalInt) // prints Optional(398) (optional)
फैंसी तरीका: जेनेरिक रास्ता। यहां आप अंत में आवश्यकतानुसार कई तार डाल सकते हैं। उदाहरण के लिए, आप पहले सभी तारों को इकट्ठा कर सकते हैं और फिर उन्हें गणना करने के लिए सरणी का उपयोग कर सकते हैं।
func getCalculatedIntegerFrom(strings: [String]) -> Int {
var result = Int()
for element in strings {
guard let int = Int(element) else {
break // or return nil
// break instead of return, returns Integer of all
// the values it was able to turn into Integer
// so even if there is a String f.e. "123S", it would
// still return an Integer instead of nil
// if you want to use return, you have to set "-> Int?" as optional
}
result = result + int
}
return result
}
let arrayOfStrings = ["98", "99", "100", "101"]
let result = getCalculatedIntegerFrom(strings: arrayOfStrings)
print(result) // prints 398 (non-optional)
स्रोत
2016-10-15 21:20:11
कैसे अपने कोड काम करता है के लिए एक स्पष्टीकरण जोड़ें। – brimstone
और यह मेरे उत्तर के लिए कैसे अलग है? –