Swift基础知识补充(二)
来源:互联网 发布:网络管理需求分析 编辑:程序博客网 时间:2024/06/01 08:59
1、字符
在Objective-C中,字符是放在单引号('a')之间的。但是,在Swift中不能用这种方式表示。Swift中无论是字符还是字符串,都必须使用双引号("a"和"abc"):
let c: Character = 'a' // 编译错误// 字符类型也需要放在双引号之间let d: Character = "d" // 正确的写法let e: Character = "ef" // 编译错误,字符类型的赋值只能有一个字符// 字符串类型放在双引号之间let str: String = "LeBron James"
另外,如果想声明一个字符类型,不能使用类型推断,必须明确指明它是Character,否则编译器会自动将其推断为String类型。也就是说,下面这种写法,编译器会把它当成String类型:
let a = "a" // 编译器推断其为字符串类型
2、字符串
在Foundation框架中有两种字符串类型,分别是Swift中的String类型,以及Objective-C中的NSString类型。String是结构体,属于值类型,而NSString是一个类,它是引用类型,在使用的时候要格外注意。
在Swift中,字符串的拼接,除了可以使用+、+=和append()方法之外,其实还可以使用()进行操作:
let num = 10let result = "\(num)加\(3.14)等于\(Int(3.14) + num)"print(result) // 13
\()被称为字符串插值,其功能非常强大,几乎可以将任何数据类型拼接起来,尤其是在通过print()函数进行打印的时候,用起来非常的方便。
字符串和整型一样,是可以进行相等和大小比较的,比较的依据是Unicode字符编码的值。比如说:
let kingJames = "LeBron James"let flash3 = "Dwyane Wade"// 进行大小比较if kingJames > flash3 { print("谁大谁尴尬!")} else { print("比较的是字符串的Unicode编码值")}
在Swift中,字符类型(Character)和字符串类型(String)都是值类型,只能用==或者!==比较是否相等;而NSString字符串是引用类型,需要使用===或者!==进行比较。
3、switch语句
在Swift中,switch语句的条件表达式可以是整型、浮点型、字符(串)、和元组等类型,并且判断语句case后面的值可以是一个,也可以是多个,甚至还可以是连续的范围:
// 1.switch的基本用法// switch后面的小括号可以省略;// switch后面的break也可以省略,系统会帮你添加)let sex = 0 // sex为0表示男性,sex为1表示女性switch sex {case 0 : print("性别为男性") // break可以省略,系统会默认帮你添加 fallthrough // 如果希望在switch中的case后面产生穿透,只需添加关键字fallthroughcase 1 : print("性别为女性")default: print("亚文化性别")}// 2.case后面可以判断多个条件,多个条件以逗号进行分割。let asian = 1 // 0表示中国人,1表示韩国人,2表示日本人switch asian {case 0, 1, 2 : // 多个判断条件以逗号分开 print("亚洲人!")case 3 : print("非洲人!")default : print("其它洲人")}// 3.switch中可以判断浮点型(OC中不能判断浮点型)let pi = 3.141switch pi {case 1.414 : print("根号2")case 1.732: print("根号3")case 3.141: print("圆周率")default: print("其它什么
阅读全文
0 0
- Swift基础知识补充(二)
- Swift基础知识补充(一)
- Swift基础知识补充(三)
- Swift基础知识(二)
- Swift基础知识(二)
- JavaScript基础知识(一、二的补充)
- 基础知识补充
- Swift中的基础知识总结(二)
- 一步一步学RMAN第七篇 RMAN基础知识补充 二
- 第七篇 RMAN基础知识补充 二 --转自君三思
- swift基础知识
- Swift 基础知识
- Swift基础知识
- Swift基础知识
- swift 基础知识
- Swift 基础知识
- Swift基础知识
- Swift基础知识
- NSCache的基本使用
- RunLoop的基础知识
- 《Swift数据结构和算法》读书笔记专题
- 项目基本架构的搭建
- Swift基础知识补充(一)
- Swift基础知识补充(二)
- Swift基础知识补充(三)
- Swift中的闭包
- Swift中的枚举
- Swift中的访问级别
- Swift中的属性
- Swift中的构造方法
- Swift中的构造函数及其继承
- Swift中的类型检查与转换
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
抖音甩手变装秀
抖音变老
抖音甩手变装
抖音动态变收藏怎么恢复
变音
抖音变老怎么拍
啊的音变
音变
甩手变装秀抖音bgm
抖音甩手变装教程
语流音变
抖音甩手变装秀配乐
抖音甩手变装秀怎么拍
全能变音器
变音大师
吃鸡变音器
抖音上从2018慢慢变老
变音器免费
聊天变音器
全能变音器下载
语流音变四种类型举例
手机变音器软件哪个好
变音器软件哪个好
变音软件男声变女声
抖音的赞怎么变多
变频
定频变频
变频定频
洗衣机变频
变频洗衣机
什么是变频
变频调速
变频空调定频空调区别
定频和变频有什么区别
变频器接线图
空调定频变频
空调定频和变频有什么区别
空调定频变频区别
冰箱变频定频
后悔买变频空调
变频和定频空调区别