初级Swift
记录初级swift学习笔记
1.在Swift中,当需要导入类库的时候,直接输入import + 类库名,不再需要添加 # 和 <> 或者 ""
例如 ,
import Foundation
import AFNetworking
2.定义常量(let)和定义变量(var)
1.定义一个常量
let myName = "Polar" //这里不需要@来表示字符串
2.定义一个变量
var myAge = "100" //这里的100会被判别为String类型
var myAgel = 18 //会被判别为整型
这是Swift在定义变量或者常量的时候,需要标识出变量或者常量的类型,如果不标识,系统会根据初始值来自行判断
例如:
let name : String = "Polar" //由前面的类型String决定后面赋值类型
let age:Int = 18 //定义了一个年龄为18的整型常量,使用let修饰时必须赋值,使用var修饰则可以不赋值
let age1:Int? //这里使用let修饰,本应赋值,但出现" ? ",这里的" ? "表示当前的age1是可选类型,其值可以为空(在声明属性时常用)
3.定义一个BOOL类型的变量 , 在Swift中,BOOL类型的值只有 ture flase
var bool:Bool = ture
4.定义一个字符类型的变量
var char:Character = "A" //此时char就是一个字符,其值也是要用 " " 来表示的,而且只能是一个字符
(1).创建一个空字符串变量
var str_empty = ""
var str_empty1 = String() //这两种方式都可以
(2).通过字符串对象的isEmpty属性来判断是否为空
if str_empty.isEmpty{
print("str_empty 为空字符串") //在Swift中打印命令名为 print 非 printf 非NSLog
}
(3).拼接字符串
var str_url = "http://"
var str = "www.jianshu.com"
let urlStr = str_url + str
print(urlStr) //打印结果为 : http://www.jianshu.com
(4).获取字符串长度
var str_l = "abcd"
print(str_l.characters.count) //打印结果为: 4
(5).字符串比较
let str_a = "jobs"
let str_b = "working"
if str_a != str_b {
print("不相等")
}
5.数组
Swift中的数组所存储的元素都必须是同一类型的,如果需要使用不同类型的数组元素可以使用OC中的数组表示方式
(1).定义一个数组
var nameArray = ["LeeHom" , "Eason" , "Jay"]
var nameArray_a :Array<String> = ["LeeHom" , "Eason" , "Jay"] //这两种方式都可以
(2).定义一个空字符串类型数组
var array_empty = Array<String>() //字符串类型的空数组
var int_empty = Array<Int>() // 整型空数组
var int_array = [Int]() //整型空数组
(3).访问数组中的某个元素
print("第二个元素\(nameArray[1])") //这里反斜杠 类似OC中[NSString stringWithFormat:]中的用法
(4).添加元素
int_array.append(10) //给整型数组添加元素
array_empty.append("Eminem") //给字符串数组添加元素
int_array += [30] //使用运算符向数组中添加一个元素
nameArray += ["Rihanna"]
int_array += [40,50,60,70] //使用运算符向数组中添加多个元素
nameArray += ["Bruno Mars" , "Coldplay"]
(5).插入元素
int_array.insert(35,atIndex: 3) //在下标为3的地方插入35
(6).移除数组中的某个元素
int_array.removeAtIndex(3) //移除下标为3的元素
(7).移除数组中的所有元素
int_array.removeAll()
6.字典
(1).定义一个字典变量
var dictionary:Dictionary<String,Int> = ["a":10 , "b":20] //<>里前是Key类型,后是Value类型
(2).定义一个空字典
var dictionary_empty:Dictionary<String,Int> = [:]
var dictionary_empty2 = Dictionary<String,Int>()
(3).向字典中添加一个键值对
dictionary["c"] = 30
(4).修改字典中某个键值对的值
dictionary["a"] = 50
(5).删除字典中的一个键值对
dictionary.removeValueForKey("a")
7.元组 (tuples) , 把多个值组合成一个复合值.元组内的值可以是任意类型
(1).定义一个元组
方法一:直接初始化一个元组 , 通过隐式类型推断每个元素的类型
let status = ("singer",["JJ","Jay"])
方法二:显示的标识来决定元素的类型
let status_a:(String,Array) = ("singer",["JJ","Jay"])
(2).取出元组中的值
方法一:直接赋值给常量,并通过使用标记名来获取对应的值
let status_b : (Kind:String , name:Array) = status
print(status_b.Kind + status_b.name[0])
方法二:取下标法 , 这里不能使用中括号了 , 使用点
print(status.0 + status.1[0])
print(status_a.0 + status_a.1[0]) //这个 1 表示在元组中的位置,也是从0开始
Swift初级知识总结(一) .