Swift3.0语言教程使用占位符格式建立和初始化字符串编程
Swift3.0语言教程使用占位符格式建立和初始化字符串在不少的编程语言中都存在占位符,占位符就是为指定的内容占留一个位置。此功能通常在开发者不知道在此位置处写什么时使用。在NSString中也为开发者提供了占位符,开发者能够使用占位符格式建立和初始化字符串,此时须要使用到init(format:_:)、init(format:locale:_:)或者是localizedStringWithFormat(_:_:)方法。编程语言
(1)init(format:_:)方法的语法形式以下:orm
convenience init(format: NSString, _ args: CVarArg...)教程
其中,format用来指定一个须要格式化的字符串,args是向format中填空的。开发
【示例1-6】如下将使用占位符格式建立和初始化字符串。字符串
import Foundationstring
let str1="Hello %@"it
var str2=NSString(string: str1)io
let str3="Swift"form
var str4=NSString(format: str2, str3) //使用占位符格式建立和初始化字符串
print(str4)
运行结果以下:
Hello Swift
(2)init(format:locale:_:)方法和init(format:_:)方法实现的功能是同样的,只不过它比init(format:_:)方法多了一个locale参数,此参数能够用来设置语言环境(每个国家都有本身的语言环境,当开发者在开发程序时,使用适当的语言环境是很重要的),其语法形式以下:
convenience init(format: NSString, locale: Locale?, _ args: CVarArg...)
【示例1-7】如下将使用init(format:locale:_:)方法建立和初始化字符串。
import Foundation
var str1=NSString(string:"This is %@")
var str2=NSString(string:"Book")
var l=Locale.current
var str3=NSString(format: str1,locale: l,str2) //建立和初始化字符串
print(str3)
运行结果以下:
This is Book
(3)localizedStringWithFormat(_:_:)方法和init(format:locale:_:)、init(format:_:)方法惟一的不一样之处在于localizedStringWithFormat(_:_:)方法是一个类方法,其语法形式以下:
class func localizedStringWithFormat(_ format: NSString, _ args: CVarArg...) -> Self
其中,format用来指定一个须要格式化的字符串,args是向format中填空的。
【示例1-8】如下将是localizedStringWithFormat(_:_:)方法建立和初始化字符串
import Foundation
var str1=NSString(string:"This is %@")
var str2=NSString(string:"Apple")
print(NSString.localizedStringWithFormat(str1, str2)) //初始初始化字符串
运行结果以下:
This is Apple