Swift3.0语言教程使用占位符格式创建和初始化字符串

Swift3.0语言教程使用占位符格式创建和初始化字符串在很多的编程语言中都存在占位符,占位符就是为指定的内容占留一个位置。此功能一般在开发者不知道在此位置处写什么时使用。在NSString中也为开发者提供了占位符,开发者可以使用占位符格式创建和初始化字符串,此时需要使用到init(format:_:)、init(format:locale:_:)或者是localizedStringWithFormat(_:_:)方法。

(1)init(format:_:)方法的语法形式如下:

convenience init(format: NSString, _ args: CVarArg...)

其中,format用来指定一个需要格式化的字符串,args是向format中填空的。

【示例1-6】以下将使用占位符格式创建和初始化字符串。

import Foundation

let str1="Hello %@"

var str2=NSString(string: str1)

let str3="Swift"

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

Swift3.0语言教程使用占位符格式创建和初始化字符串的更多相关文章

  1. Swift3.0语言教程删除字符与处理字符编码

    Swift3.0语言教程删除字符与处理字符编码 Swift3.0语言教程删除字符 Swift3.0语言教程删除字符与处理字符编码,在字符串中,如果开发者有不需要使用的字符,就可以将这些字符删除.在NS ...

  2. Swift3.0语言教程字符串大小写转化

    Swift3.0语言教程字符串大小写转化 Swift3.0语言教程字符串大小写转化,在字符串中,字符串的格式是很重要的,例如首字母大写,全部大写以及全部小写等.当字符串中字符很多时,通过人为一个一个的 ...

  3. Swift3.0语言教程使用指针创建和初始化字符串

    Swift3.0语言教程使用指针创建和初始化字符串 Swift3.0语言教程使用指针创建和初始化字符串苹果的Swift团队花了不少功夫来支持C的一些基础特性.C语言中为我们提供了指针,Swift也不例 ...

  4. Swift3.0语言教程字符串与URL的数据转换与自由转换

    Swift3.0语言教程字符串与URL的数据转换与自由转换 Swift3.0语言教程字符串与URL的数据转换 Swift3.0语言教程字符串与URL的数据转换与自由转换,字符串中的字符永久保存除了可以 ...

  5. Swift3.0语言教程字符串与文件的数据转换

    Swift3.0语言教程字符串与文件的数据转换 Swift3.0语言教程字符串与文件的数据转换,如果想要对字符串中的字符进行永久保存,可以将字符串中的字符写入到文件中.当然,开发者也可以将写入的内容进 ...

  6. Swift3.0语言教程字符串转换为数字值

    Swift3.0语言教程字符串转换为数字值 Swift3.0语言教程字符串转换为数字值,在NSString中,开发者可以将字符串转换为数字值,通过这些数字值可以实现一些功能,如加法运算.减法运算等.数 ...

  7. Swift3.0语言教程使用URL字符串

    Swift3.0语言教程使用URL字符串 Swift3.0语言教程使用URL字符串,和路径一样,URL其实也是字符串,我们可以将这些字符串称为URL字符串.本小节将讲解URL字符串的使用. 1.编码 ...

  8. Swift3.0语言教程使用路径字符串

    Swift3.0语言教程使用路径字符串 Swift3.0语言教程使用路径字符串,路径其实是字符串的一种,我们称为路径字符串.本小节将讲解如何使用路径字符串. 1.组合路径 开发者可以将数组快速的组合成 ...

  9. Swift3.0语言教程分割字符串与截取字符串

    Swift3.0语言教程分割字符串与截取字符串 Swift3.0语言教程分割字符串 如果想要快速的创建一个数组,我们可以将字符串进行分割,分割后的内容将会生成一个数组.在NSString中有两个分割字 ...

随机推荐

  1. 100个Github上Android开源库

    项目名称 项目简介 1. react-native 这个是 Facebook 在 React.js Conf 2015 大会上推出的基于 JavaScript 的开源框架 React Native, ...

  2. [C#]Datatable和json互相转换操作

    #region DataTable 转换为Json字符串实例方法 /// <summary> /// GetClassTypeJosn 的摘要说明 /// </summary> ...

  3. js判断手机端操作系统(Andorid/IOS),并自动为链接添加相应下载地址

    <script type="text/javascript"> $(document).ready(function(e) { var u = navigator.us ...

  4. 搞笑世界杯(codevs 1060)

    题目描述 Description 随着世界杯小组赛的结束,法国,阿根廷等世界强队都纷纷被淘汰,让人心痛不已. 于是有 人组织了一场搞笑世界杯,将这些被淘汰的强队重新组织起来和世界杯一同比赛.你和你的朋 ...

  5. Git 操作的一些场景

    1. 某些不需要的文件/文件夹,如:/build 之类,在添加对应的gitignore之前Push了,导致每次编译都会产生新的文件 解决方法:直接删掉不需要的文件/文件夹,然后push gitigno ...

  6. Android xml text 预览属性

    只在 AS 中生效 xmlns:tools="http://schemas.android.com/tools" tools:text="I am a title&quo ...

  7. debug与release

    因为在Debug中有ASSERT断言保护,所以要崩溃,而在Release优化中就会删掉ASSERT,所以会出现正常运行. void func() {    char b[2]={0};    strc ...

  8. C#学习笔记----C#中的闭包机制

    http://www.cnblogs.com/jiejie_peng/p/3701070.html http://www.cnblogs.com/Ribbon/p/3611457.html “ 若匿名 ...

  9. Java集合源码学习(五)几种常用集合类的比较

    这篇笔记对几个常用的集合实现,从效率,线程安全和应用场景进行综合比较. >>ArrayList.LinkedList与Vector的对比 (1)相同和不同都实现了List接口,使用类似.V ...

  10. ss + pac

    浅析PAC,教你动手修改你的PAC文件及user-rule文件实现自动代理 - 推酷http://www.tuicool.com/articles/V77jyu shadowsocks自定义代理规则u ...