SwiftString使用详情
字符串常见操作
1.字符串是值类型
1.String值在传递给方法或者函数的时候会被复制过去;
2.赋值给常量或者变量的时候也是一样的;
3.Swift编译器优化了字符串使用的资源,实际上拷贝只会在确实需要的时候才进行
var str: String = "abc"
var str1 = str
print(str==str1) //true
str = "def"
print(str) //abcdef
print(str1) //abc
print(str=str1) //false
2. 操作字符串
1.for -in 循环遍历String中的每一个独立的Character
2.Character类型
3.String值可以通过传入Character数组来构造
for character in "Dong!小狗" {
print(character)
/**
D
o
n
g
!
小
狗
*/
}
let carCharacters: [Character] = ["C","a","t","!"]
let catString = String(carCharacters)
print(catString)//Cat!
3.字符串拼接
1.使用加运算符( )创建新字符串; 2.使用加赋值符号( =)在已经存在的String值末尾追加一个String值 3.使用String类型的append()方法来可以给一个String变量的末尾追加Character值
4.字符串插值
1.字符串插值是一种从混合常量,变量,字面量和表达式的字符串字面量构造新String值得方法;
2.每一个你插入到字符串字面量的元素都要被一对圆括号包裹,然后使用反斜杠前缀
3.类似于NSString的stringWithFormat方法,但是更加简单,更强大
let multiplier = 3
let meassage = "\(multiplier) times 2.5 is \(Double(multiplier)*2.5)"
print(meassage)//3 times 2.5 is 7.5
5.字符串索引
1.每一个String值都有相关的索引类型,String.index ,它相当于每个Character在字符串中的位置;
2.startIndex属性来访问String中第一个Character的位置.endIndex属性就是String中最后一个字符后的位置;
3.endIndex属性并不是字符串下标脚本的合法实际参数;
4.如果String为空,则startIndex和endIndex相等;
5.使用greeting.index(before: )和index(after: )方法来访问给定索引的前后
6.要访问给定索引更远的索引,你可以使用index(_, offsetBy: );
7.使用indeices属性来访问字符串中每个字符串的索引;
注意事项:String不能使用下标的方法取值.
var greeting = "Gunten Tag!"
print([greeting.startIndex])
print([greeting.endIndex])
1.插入字符,使用insert(_, at: )方法;
2.插入另外一个字符串的内容到特定的索引,使用insert(contentsOf: , at: )方法
greeting.insert(contentsOf:"god" , at:greeting.endIndex )
1.移除字符串,使用过remove(at: )方法
2.移除一小段特定范围的字符串,使用removeSubrange(Range<String.Index>)方法
6.字符串比较
1.字符串和字符串相等性(==和!=)
2.前缀相等性hasPrefix
3.后缀相等性hasSuffix
print(welcome==welcome1)
print(welcome.hasPrefix("hello"))
print(welcome.hasSuffix("world"))
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgbkggf
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01