SWIFT总结
发布时间:2020-12-14 02:38:50 所属栏目:百科 来源:网络整理
导读:SWIFT总结 一、类型: swift是强类型的,也就说在编译器编译的时候知道某个变量的类型,如果两个变量的类型不一样不能进行操作,比如: int a = 0; float b = 2.5; int total = a + b; // 编译时会报错 二、字符串操作: int peopleCount = 4;"There are (p
SWIFT总结一、类型:swift是强类型的,也就说在编译器编译的时候知道某个变量的类型,如果两个变量的类型不一样不能进行操作,比如: int a = 0; 二、字符串操作:int peopleCount = 4; "There are (peopleCount) peoples"OC中字符串的长度length和swift中的length返回的长度有可能不一样,通过utf16count返回的才能和OC的length相同 字符串的拼接用加号“+”,比较相等用等号”==” ###三、类型推断: 编译器可以根据变量的值来推断出其类型,这时候我们不需要明确指定它的类型,比如: var count: Int = 4; var count = 4; // 这两条语句是等价的###四、IF语句 if语句中的条件必须显示的表示为true或false,否则会报错,比如: var a = 3 if(3 > 0){ doSomething() } 不能写成 if( a ){ doSomething() }###五、类型 1. Int,Int8,Int16,Int32是不同类型,它们之间不能做运算操作; 2. float 是32位, double是64位,编译器总是将某个字推断成double类型的,而不是float型的 ###六、数组 数组是存储相同类型的有序列表。 定义: var peoples: [String] = [] // 显示类型 var peoples = [String]() // 隐式类型注意: 数组作为函数参数传递的时候,是值传递,至于数组中的元素是按照何种方式传递,取决于数组中元素的类型是值类型还是引用类型。 ###七、字典 存储无序相同类型的集合 var people: [String: someClass] = [:] var people = [String: someClass]() var hight = ["wsy": 20]###八、可选类型 声明的时候加上一个问号“?”,如果访问可选类型必须进行拆包,否则会报错,使用叹号“!”拆包,比如: let dict = ["name" : "wsy"] let name = dict["name"] let greet = "Hello" + name! // 直接对name进行拆包可能会导致奔溃,因为name可能是nil,应该这样写 if let myName = name! { let greet = "Hello" + myName }###九、泛型: func maxValue (a: T,b: T) ->T { if a > b { return a } return b }###十、元组: 包含不同类型的值,可以作为函数的返回值,比如: let ice = (2,"Hello","World") // 访问: ice.0 ice.1 ... let ice2(count:2,name:"Hello",greet: "World") // 访问: ice2.count ice2.name ... 注意:如果某个值在分解的时候不需要,可以使用"_"替代 十一、Switch语句于OC的不同
十二、类初始化类初始化的时候,需要注意一些问题: 十三、函数外部参数: func hello(externalName localName: Int){ } 如果想改变参数,必须声明为var类型: func hello(var localName: Int){ localName = 10 } 外部参数名和内部参数名相同用“#”: func hello( #localName: Int){ } 参数默认值,用“=”号,如果参数没有的时候为默认值: func hello(externalName localName: Int = 5){ } 十四、闭包:定义:{(参数列表) -> 返回值类型 in 语句} 使用函数: func customSort() -> (Int,Int) -> Bool{ func mySort( a: Int,b: Int) -> Bool{ return a 十五、写在最后
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |