一、简介

Swift中的字符串和字符与OC中在表示上并无大的区别,考虑到字符串在平时的开发工作中属于频繁使用的类型,重点需要掌握的内容是String各种操作函数的写法。

二、Swift与OC的区别

三、String与Character的具体介绍

·关于字符串和字符的概念和联系与OC中保持一致

·在Swift中可以使用加号运算符进行字符串的连接操作

·Swift的String类型与OC中的NSString类型进行了无缝桥接。也就是说NSString实例对象可以直接调用String中的方法,String实例对象可以直接调用NSString中的方法。

1、字符串字面量

·Swift中直接用双引号(""),而OC中需要用(@"")

2、初始化字符串

·可以使用空字符串字面量初始化,也可以使用String的初始化方法

var emptyString = ""

var anotherEmptyString = String()

·在OC中判断NSString实例对象是否为空通过length属性,在Swift中通过isEmpty属性

if emptyString.isEmpty {

}

3、字符串可变性

·在OC中需要通过两个不同的类(NSString和NSMutableString)来指定字符串是否可以被修改。但是在Swift中使用var和let来区分的。也就是常量字符串不可以被修改

let constantString = "Highlander"

constantString += "and another Highlander"//编译错误

4、字符串是值类型

·Swift的String类型是值类型。如果创建了一个新的字符串,那么当进行常量、变量赋值操作,或者在函数/方法中传递时,会进行值拷贝。任何情况下,都会对已有字符串值创建新副本,并对该新副本进行传递或赋值操作。

·Swift中所说的值拷贝,对应这OC中的深拷贝(也就是内容拷贝)

5、使用字符Character

·字符类型关键词是Character

·字符字面量的表示是"i"

·遍历String实例对象就是Character对象

6、连接字符串

Swift3.0-字符串和字符的更多相关文章

  1. Swift3.0字符串大小写转化

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

  2. Swift3.0字符串相关操作

    以下有关字符串的常用操作都可直接复制到Xcode中进行验证,如发现错误,请在评论区留言指正! 1.字符串的定义 var str1="hello, swift." //字符串变量 相 ...

  3. Swift3.0 字符串(string)

    string常用的一些操作方式 //字符串 //1.初始化字符串 //1.1通过字面量赋值的方式初始化字符串 let tempStrig = "this is temp string&quo ...

  4. Swift3.0语言教程查找字符集和子字符串

    Swift3.0语言教程查找字符集和子字符串 Swift3.0语言教程查找字符集和子字符串,在字符串中当字符内容很多时,我们就需要使用到查找字符集或者子字符串的方法.以下我们将讲解3种查找字符集和子字 ...

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. CSS学习(6)层叠

    1.声明冲突 不同的样式,多次应用到同一元素 层叠:解决声明冲突的过程,浏览器自动处理(权重计算) 有时候需要修改样式的时候,可以使用优先级高的方式覆盖,而不是在源代码修改 ①比较重要性 (1)作者样 ...

  2. token是个什么东西?怎样生成并携带token

    什么是token及怎样生成token  转载自:https://www.cnblogs.com/lufeiludaima/p/pz20190203.html 什么是token Token是服务端生成的 ...

  3. boolean类型set、get方法

    今天在了解lombok的时候偶然看到一个问题,在bean中存在boolean类型的数据的时候,用eclipse工具自动生成的set.get方法存在的问题. 不管变量为isXXX还是XXX时,set.g ...

  4. 理解ASP.NET Core验证模型 Claim, ClaimsIdentity, ClaimsPrincipal

    Claim, ClaimsIdentity, ClaimsPrincipal: Claim:姓名:xxx,领证日期:xxx ClaimsIdentity:身份证/驾照 ClaimsPrincipal: ...

  5. Nodejs的Gruntjs使用一则

    Gruntjs是前端项目构建工具,基于nodejs命令.有些js项目是基于Gruntjs构建的,如Jquery. Gruntjs主要功能有: 1.合并文件. 2.压缩html,js,css,图片文件. ...

  6. Codeforces Round #577 (Div. 2) 题解

    比赛链接:https://codeforc.es/contest/1201 A. Important Exam 题意:有\(n\)个人,每个人给出\(m\)个答案,每个答案都有一个分值\(a_i\), ...

  7. jmeter的使用---压力测试

    jmeter用于压力测试 首先我们要区别压力和攻击,当设立了不适当的线程数量和准备时长,就容易造成攻击. 线程数:虚拟用户数.一个虚拟用户占用一个进程或线程.设置多少虚拟用户数在这里也就是设置多少个线 ...

  8. acm数论之旅(转载) -- 逆元

    ACM数论之旅6---数论倒数,又称逆元(我整个人都倒了( ̄﹏ ̄))   数论倒数,又称逆元(因为我说习惯逆元了,下面我都说逆元) 数论中的倒数是有特别的意义滴 你以为a的倒数在数论中还是1/a吗 ( ...

  9. 201771010135 杨蓉庆AND张燕 《面对对象程序设计(java)》第十一周学习总结

    1.实验目的与要求 (1) 掌握Vetor.Stack.Hashtable三个类的用途及常用API: (2) 了解java集合框架体系组成: (3) 掌握ArrayList.LinkList两个类的用 ...

  10. C#加载XML方式

    //path:xml文件路径  SECSMessage:xml文件的根元素下的第一个子集元素 <SECSLibrary> <SECSMessage> <Descripti ...