india - new swift 2018 interior



स्विफ्ट.uppercaseString या.lowercaseString संपत्ति प्रतिस्थापन (3)

चूंकि स्विफ्ट में स्ट्रिंग्स में अब .uppercaseString या .lowercaseString गुण उपलब्ध नहीं हैं, मैं उस फ़ंक्शन को करने के बारे में कैसे जाऊं?

अगर मेरे पास उदाहरण है:

var sillyString = "This is a string!"
let yellyString = sillyString.uppercaseString
let silentString = sillyString.lowercaseString

मैं sillyString लेना और इसे अपरकेस या लोअरकेस में बदलना चाहता हूं। मैं अब ऐसा करने के लिए कैसे जाउंगा?

अग्रिम में धन्यवाद!


स्विफ्ट 4

टी एल; डॉ

स्विफ्ट 3 में नए नामों को इंगित करने के लिए -ed पोस्टफिक्स का उपयोग किया जाता है ताकि uppercased() और lowercased() संशोधित मूल की बजाय प्रतिलिपि लौटा lowercased() :

import Foundation

let title = "Castration: The Advantages and the Disadvantages" // Don't `var` unless you have to!
title.uppercased() // "CASTRATION: THE ADVANTAGES AND THE DISADVANTAGES"
title.lowercased() // "castration: the advantages and the disadvantages"
title.capitalized  // "Castration: The Advantages And The Disadvantages"

असंगतता: .method () बनाम प्रॉपर्टी

अजीब विसंगति पर ध्यान दें जहां uppercased () और lowcased () फ़ंक्शन हैं, जबकि पूंजीकृत एक संपत्ति है। यह एक निरीक्षण की तरह लगता है, इस मामले में उम्मीद है कि तेजी से विकास प्रक्रिया के साथ सहज कोई 3.0 बीटा छोड़ने से पहले एक सुधार करेगा।

अगर आपको पता है कि आप एनएसएसटींग के साथ काम कर रहे हैं, तो तीनों के लिए एक संपत्ति उपलब्ध है:

NSString(string: "abcd").uppercased
NSString(string: "ABCD").lowercased
NSString(string: "abCd").capitalized

भाषा मुश्किल है

ऊपर दिए गए तरीके एनएसएसटींग और सीएफस्ट्रिंग को विधि के प्रतिनिधिमंडल की पूरी स्ट्रिंग को शून्य के डिफ़ॉल्ट लोकेल के साथ छुपाते हैं। यह ज्यादातर समय काम करता है। कम से कम, यह अंग्रेजी में करता है। तथ्य यह है कि, मैं अपने खेल के मैदान से जो कुछ भी पेस्ट करने जा रहा हूं, उसे मैं वास्तव में समझ नहीं पा रहा हूं।

let turkishI = "\u{0130} is not I"                  // "İ is not I"
turkishI.uppercased()                               // "İ IS NOT I"
turkishI.uppercased(with: Locale(identifier: "en")) // "İ IS NOT I"
turkishI.uppercased(with: Locale(identifier: "tr")) // "İ İS NOT I"
turkishI.lowercased()                               // "i̇ is not i"
turkishI.capitalized                                // "İ Is Not I"
turkishI.lowercased(with: Locale(identifier: "en")) // "i̇ is not i"
turkishI.lowercased(with: Locale(identifier: "tr")) // "i is not ı"

स्विफ्ट 3

लोकेल प्रारंभकर्ता के पास स्विफ्ट 3 में थोड़ा लंबा पैरामीटर नाम है ...

turkishI.uppercased(with: Locale(localeIdentifier: "en"))

हल्का हास्य

"✈️".uppercased()  // 🚀

एक्सकोड 6.0 / स्विफ्ट 1.0

String को एनएसएसटींग के लिए निर्बाध रूप से ब्रिज किया गया है, इसलिए इसमें uppercaseString और lowercaseString String गुण होते हैं जब तक आप import Foundation (या वास्तव में लगभग कोई ढांचा नहीं है क्योंकि वे आम तौर पर import Foundation आंतरिक रूप से import Foundation करेंगे। स्विफ्ट प्रोग्रामिंग गाइड के स्ट्रिंग्स एंड कैरेक्टर सेक्शन :

स्विफ्ट के स्ट्रिंग प्रकार को फाउंडेशन की एनएसएसटींग कक्षा में निर्बाध रूप से ब्रिज किया गया है। यदि आप कोको या कोको टच में फाउंडेशन फ्रेमवर्क के साथ काम कर रहे हैं, तो संपूर्ण एनएसएसटींग एपीआई आपके द्वारा बनाए गए स्ट्रिंग वैल्यू पर कॉल करने के लिए उपलब्ध है, इस अध्याय में वर्णित स्ट्रिंग फीचर्स के अतिरिक्त। आप किसी भी एपीआई के साथ स्ट्रिंग वैल्यू का भी उपयोग कर सकते हैं जिसके लिए एनएसएसटींग इंस्टेंस की आवश्यकता होती है।

एक्सकोड 6.1 / स्विफ्ट 1.1

जैसा कि @ न्यूवाक्ट ने इंगित किया है, एक्सकोड 6.1 / स्विफ्ट 1.1 में, uppercaseString String और लोअरकेसस्ट्रिंग स्विफ्ट की String क्लास में हैं, इसलिए आपको एनएसएसटींग में परिभाषित लोगों का उपयोग करने की आवश्यकता नहीं है। हालांकि, इसे Foundation ढांचे में String क्लास के विस्तार के रूप में लागू किया गया है, इसलिए समाधान अभी भी वही है: import Foundation

खेल के मैदान में:

import Foundation

var sillyString = "This is a string!" // --> This is a string!
let yellyString = sillyString.uppercaseString // --> THIS IS A STRING!
let silentString = sillyString.lowercaseString // --> this is a string!

स्विफ्ट 3.0

खेल के मैदान में:

import Foundation

var sillyString = "This is a string!" // --> This is a string!
let yellyString = sillyString.uppercased() // --> THIS IS A STRING!
let silentString = sillyString.lowercased() // --> this is a string!

String पर uppercaseString String और lowercaseString String गुण अब स्विफ्ट मानक लाइब्रेरी में नहीं हैं। इसके बजाय, Foundation अब उन्हें प्रदान करता है। तो आपको करना है

import Foundation

इसके प्रयेाग के लिए।





swift