swift 数据类型

Int : 整数类型

定义方法:
let a:Int = 10
let a = 10 //声明常量和变量的时候不一定需要显式指定类型,Swift 会使用类型推断来选择合适的类型

String : 字符串

  • 定义方法:
    let str:String = "Hello world"
    let str = "Hello world"
  • 分割字符串
    let str = "你好,生活"
    var strArr = str.components(separatedBy: ",")
    输出
    "你好,生活"
    ["你好", "生活"]

Float : 32位浮点数

定义方法:
let floatNum:Float = 0.01
let floatNum = 0.01

Double : 64位浮点数

定义方法:
let douNum:Double = 0.01
let douNum = 0.01

Bool : 布尔值

定义方法:
var isSelect:Bool = true
var isSelect = true

Character : 字符

定义方法:
var chaStr:Character = "c"
var chaStr = "c"

Array : 数组

  • 定义方法:
var arr = [String]()
//append:修改数组
arr.append("a")
arr.append("b")
arr.append("c")
arr.append("d")

输出

image.png

var arr = [String]()
arr = ["你","好"]//正确
arr = [1,"你好"]//错误。内容必须为String类型
  • 修改数组中某一位的值
var arr = [String]()
arr.append("a")
arr.append("b")
arr[0] = "我"

输出

image.png

  • 数组合并
var sA = [Int](repeating: 2, count:2)
print(sA)
var sB = [Int](repeating: 1, count:3)
print(sB)
var sC = sA + sB
print(sC)

输出

image.png

Dictonary : 字典

  • 定义方法:
var dicName =  [KeyType: ValueType]()
var dic = [Int:String]()
dic = [1:"你",2:"好"]

输出

image.png

  • 修改内容: updateValue
var dic = [Int:String]()
dic = [1:"你",2:"好"]
dic.updateValue("我", forKey: 1)
print(dic)

输出

image.png

  • 移除内容: removeValue
var dic = [Int:String]()
dic = [1:"你",2:"好"]
dic.removeValue(forKey: 1)
print(dic)

输出

image.png

  • 字典转数组
var dic:[Int:String] = [1:"One", 2:"Two", 3:"Three"]
let key = [Int](dic.keys)
let value = [String](dic.values)

输出

image.png

enum:枚举

定义方法:
enum <#name#> {
case <#case#>
}

enum PersonType {
    case name
    case phone
    case age
    case sex
}
var personAge = PersonType.age

类型别名:用typealias定义类型别名

typealias newname = type

正确写法:

typealias newStr = String
var a:newStr = "你好"

输出

image.png

错误方法: 因为b是newStr类型的。而newStr是字符串String的类型别名,所以newStr为String类型,不能用Int类型赋值

image.png

类型推断

声明常量和变量的时候不一定需要显式指定类型,Swift 会使用类型推断来选择合适的类型

let a = 1 //推测a为Int型
let b = "你好"//推测b为String型

Optionals:可选类型

用于处理值缺失的情况

var optStr: String? //optStr可以没有值

强制解析

var str: String? = nil
str! = nil //报错,变量名后跟“  !”表示str里必须有值,否则会报错

你可能感兴趣的:(swift 数据类型)