Swift语法基础:13 - Swift的字符串字面量, 初始化字符串, 字符串可变性, 字符串是值类型

Swift语法基础:13 - Swift的字符串字面量, 初始化字符串, 字符串可变性, 字符串是值类型,第1张

概述前面把基本的运算符搞定了, 现在让我们来看看Swift的字符串. 1.字符串字面量 所谓的字符串字面量其实就是你一个字符串变量里面有多少个字符, 这个理解不难. let someString = "Some string literal value" PS: 这里就涉及到我们之前学到的一个知识点, 类型推测, 由于someString是使用”Some string literal value”初始

前面把基本的运算符搞定了,现在让我们来看看Swift的字符串.

1.字符串字面量

所谓的字符串字面量其实就是你一个字符串变量里面有多少个字符,这个理解不难.

let someString = "Some string literal value"

PS: 这里就涉及到我们之前学到的一个知识点,类型推测,由于someString是使用”Some string literal value”初始化的,所以编译器会自动判断someString是String类型.

2.初始化空字符串
var emptyString = ""var anotherEmptyString = String()

这两者都是空字符串的初始化方式,两者都是等价的.

我们还可以通过一个函数来判断字符串是否为空:

if emptyString.isEmpty {    println("nothing to see here")}// 打印出来的结果: nothing to see here
3.字符串可变性

在Swift中更改字符串和添加字符串是非常简单的事情,比如:

var variableString = "Horse"variableString += " and carriage"println(variableString)// 打印出来的结果: Horse and carriage

有一个注意点,常量的时候是不可以这样子做的,编译器会报错,比如:

let constantString = "Highlander"constantString += " and another Highlander"
4.字符串是值类型

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

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

Swift 默认字符串拷贝的方式保证了在函数/方法中传递的是字符串的值,其明确您独有该字 符串的值,无论它来自哪里。您可以放心您传递的字符串本身不会被更改,除非是你自己更 改它。

好了,这次我们就讲到这里,下次我们继续~

总结

以上是内存溢出为你收集整理的Swift语法基础:13 - Swift的字符串字面量, 初始化字符串, 字符串可变性, 字符串是值类型全部内容,希望文章能够帮你解决Swift语法基础:13 - Swift的字符串字面量, 初始化字符串, 字符串可变性, 字符串是值类型所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1088745.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存