8.Swift学习之字符串
字符串的介绍
- 字符串在开发中使用得非常频繁
- OC和Swift中字符串的区别
- 在OC中字符串类型是
NSString
,在Swift中字符串类型是String
- OC中字符串
@""
,Swift中字符串""
- 在OC中字符串类型是
- 使用 String 的原因
- String 是一个结构体,性能更高
- NSString 是一个 OC 对象,性能略差
- String 支持直接遍历
字符的定义
- 定义不可变字符串
let str = "hello Objective-C"
- 定义可变字符串
var str = "hello Swift"
- 多行字符串
""" 静夜思 作者:李白 床前明月光,疑是地上霜。 举头望明月,低头思故乡。 """
字符串的常用操作
- 长度
let str = "12345678" let len2 = str.count //8 let len3 = (str as NSString).length //8
- 拼接
- +号
- append
let str1 = "abc" + "cde" var str = "abc" str.append("cde")
- 遍历
let str = "abcdefg" for char in str { print(char) } --------------------- let str = "abcdefg" for (index, value) in str.enumerated() { print("\(index) --- \(value)") }
- 大写或小写
let str = "abcdefg" print(str.lowercased()) //全部小写 print(str.uppercased()) //全部大写
- 含有字符串
let str = "abcdefg" print(str.contains("cd")) //true print(str.contains("c")) //true print(str.contains("o")) //false
- 串分割
import Foundation let str = "abcdefg$$aaaa$$bbbb$$ccc" let desc = str.components(separatedBy: "$$") for item in desc { print(item) }
- 替换
import Foundation let str = "abcdefg$$aaaa$$bbbb$$ccc" let dest11 = str.replacingOccurrences(of: "$$", with: "**") print(dest11)
- 子串
let str = "Hello World" //截取某字符串的前5个字符串 let sub1 = str.prefix(5) //截取某字符串的后5个字符串 let str1 = str.suffix(5) //也可以换种写法 let index2 = str.index(str.endIndex, offsetBy: -5) let sub2 = str[index2..<str.endIndex] //截取某字符串的第3个字符到第6个字符范围的字符串 let index3 = str.index(str.startIndex, offsetBy: 3) let sub3 = str[str.startIndex..<index3] let index4: String.Index = str.index(str.endIndex, offsetBy: -3) //从某个位置开始 到某个位置结束 let sub4 = str[index3..<index4]

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
9.Swift学习之数组
数组的介绍 数组(Array)是一堆有序的由相同类型元素构成的集合 数组中的元素是有序的,可重复出现 Swift用Array表示数组,是一个泛型集合(泛型后面会讲,现在可理解为指定数组里面放什么类型的数据) 与OC数组的区别 Array是一个结构体,而不是一个类 可以放普通类型 数组的初始化 数组分成:可变数组和不可变数组 使用let修饰的数组是不可变数组 使用var修饰的数组是可变数组 // 定义一个可变数组,必须初始化才能使用 var array1 : [String] = [String]() // 定义一个不可变数组 let array2 : [NSObject] = ["zhangsan", 18] 在声明一个Array类型的时候可以使用下列的语句之一 var stuArray1 : Array<String> //语法糖 var stuArray2 : [String] 声明的数组需要进行初始化才能使用,数组类型往往是在声明的同时进行初始化的 // 定义时直接初始化 var array = ["zhangsan", "lisi", "wangwu"] // 先定...
- 下一篇
7.Swift学习之循环
循环的介绍 在开发中经常会用到循环 常见C/OC的循环有:for/while/do while. Swift中对应的为:for/while/repeat while. for循环的写法 C风格 循环(淘汰) // 传统写法 已经在Swift3中淘汰 for var i = 0; i < 10; i++ { print(i) } for in 循环 for i in 0..<10 { print(i) } for i in 0...10 { print(i) } 特殊写法 如果在for循环中不需要用到下标i for _ in 0..<10 { print("hello") } while和repeate while循环 while循环 while的判断句必须有正确的真假,没有非0即真 while后面的()可以省略 var a = 0 while a < 10 { print(b) // a++已经在Swift3之后淘汰 a = a + 1 } repeat while循环 var b = 0 repeat { print(b) b = b + 1 } while ...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- 设置Eclipse缩进为4个空格,增强代码规范
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Red5直播服务器,属于Java语言的直播服务器
- SpringBoot2全家桶,快速入门学习开发网站教程
- Windows10,CentOS7,CentOS8安装Nodejs环境
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合Thymeleaf,官方推荐html解决方案