1.3 字符串和字符

String

在Swift中,String基本上改过所有字符串所需要用到的类型了。

初始化空的字符串

var 空字符串 = " "
var 另一个空字符串 = String( )
//这两个字符串都为空,并且都相等。

可以通过Bool类型的isEmpty属性来判断字符串是否为空;

if 空字符串.isEmpty {
    print("啥都没有")
}//打印啥都没有

字符串可变性

在OC中字符串分为NSString和NSMutableString来指定能否被修改。
但是在swift中,仅仅通过它是变量和常量来进行更改,实现了多种类型可以统一。

let a = "hello"
a = "world" //报错
var b = "hello"
b = "world" //通过
//仅仅取决于声明是用let还是var

字符串类型

在Swift中String的类型是值类型。
简单来说就是String值的传递是你和你的影子一起走,NSString仅仅是你的影子走了,你自己还是在原地。

官方的解释:和Cocoa中的NSString不同,当在Cocoa中创建了一个NSString实列,并将其传递给一个函数/方法,或者赋给一个变量,您永远都是传递或者赋值同一个NSString实例的一个引用。除非您特别要求其进行值拷贝,否则字符串不会进行赋值新副本操作。

总的来说就是说Swift的String比OC的String要牛逼一些 - 。- !

使用字符(characters)

在Swift中String类型表示特定序列的字符值的集合,每一个字符值代表一个Unicode字符,我们可以使用for-in来遍历字符串中的每一个字符

let say = "I love you "
for characters in say.characters {
print(characters)
}//分别是I l o v e y o u 

计算字符串数量

使用全局函数:String.character.count,可以获取该字符串的字符数量

获取字符串的数量

连接字符串和字符

直接上图,这部分注意相加的时候类型转换即可

连接字符串和字符

字符串插值

借上面这个例子:使用" \ ( ) "可以在字符串中插入值


字符串插值

比较字符串

Swift提供了三种方式来比较字符串的值:字符串相等,前缀相等和后缀相等。

  • 前缀相等:hasPrefix
  • 后缀相等:hasSuffix


    字符串比较
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容