
Mac OS X系统 10.9.3及更高版本
1、官方文档(The Swift Programming Language)
https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/TheBasics.html#//apple_ref/doc/uid/TP40014097-CH5-XID_399
2、应用程序 iBooks 免费下载地址
https://itun.es/cn/jEUH0.l
输出Hello World!
println("Hello,World ") 1、注释格式
单行注释// 单行注释 多行注释
・Swift 多行注释可以嵌套,这点和其他语言不一样, 很实用的一个功能
/* //单行注释格式 /*多行注释格式*/*/ 分号
・单个语句后面无需加分号,加了也行
・多个语句放在一行,需要加分号
2、常用数据类型
Int:Int8、Int16、Int32、Int64 UInt:UInt8、UInt16、UInt32、Uint64 Double float Bool Character String Optional(可选类型)3、变量
・值可以根据需要不断修改的量称为变量
・使用var声明变量
var Variable = 42
4、常量
・值不能够被二次修改的量称为常量
・使用let声明常量、
let co unt=12
5、类型推导:
・编译器在编译的时候 通过提供的初始化值 自动推导出 特定的表达式的类型
var myVariable = 42 //编译器会自动推断其类型为Int
var int : Int = 10 //显示声明类型,语法:”变量 : 类型名
6、命名规则
Swift中可以使用几乎任何字符来作为常量和变量名(包括Unicode),但不能含有数字符号、箭头、横线、制表符,不能以数字开头
var π=3.14
var dog=“狗”
var ��=”狗”
var 狗=”狗”
7、整数表现形式
- 二进制数:前缀为Ob
- 八进制数:前缀为Oo
- 十六进制数:前缀为Ox
let decima=Ob10001
8、类型别名
・使用typealias关键字定义类型别名,类似typedef
typealias NSInteger = Int //给Int取个别名叫NSInteger typealias NSInteger =valuevalue : NSInteger
9、布尔类型
var tigerIsAnimal : Bool = true var animaListiger = false
10、数组与字典
Array 数组
・使用[] *** 作符声明数组
emptyArray1 = []
let emptyArray2 = String[]() //声明空数组,限定了值的类型为Stringvar shopPingList = ["catfish","water","tulips","blue paint"]println(shopPingList.count)println(shopPingList[1])shopPingList[1] = "bottle of water"println(shopPingList[1])
11、Dictionary 字典
・使用[key:value] *** 作符声明字典
let emptyDictionary1 = [:]let emptyDictionary = Dictionary<String,float>()var occupations = [ "Malcolm": "Captain","Kaylee": "Mechanic",]println(occupations["Malcolm"])occupations["Jayne"] = "Public Relations" println("The occupations count is " + String(occupations.count))
12、元组(tuple)
元组可以将任意数据类型组装成一个元素 元组在作为函数返回值的时候特别适用,可以为函数返回更多的信息元组创建
let (x,y) = (1,2)let http404Error = (404,"Not Found") //由一个Int和一个字符串String组成let (statusCode,statusMessage) = http404Error
元组访问方式
直接访问 通过key访问value,类似 Dictionary序号访问方式,序号从0开始
属性访问方式,点语法
13、可选类型 Optional
可选类型:这个值要么存在,并且等于x;要么根本不存在。
(变量名\常量名: 类型?)
var serverResponseCode: Int? = 404 //?的意思是 要么存在,且值为404;要么值不存在,为nil/*由于toInt⽅方法可能会失败,因此它会返回⼀一个可选的Int类型,⽽而不同于Int类型。⼀一个可选的Int类型被记 为Int?不是Int。问号表明它的值是可选的,可能返回的是⼀一个Int,或者返回的值不存在。*/let convertednumber: Int?=possibleNumber.toInt()
14、nil
Swift 的nil不同于Object-C中的nil。Object-C中,nil是一个指针指向不存在的对象。
Swift中,nil不是指针而是一个特定类型的空值。任何类型的可选变量都可以被设为nil,不光是指针。
nil 不能用于非可选类型
15、解包( !的用法)
可选类型在每次访问的时候 都会提取并检测它的值是否存在,但有时候根据程序结构 就可以推断 可选量在首次赋值后 必然存在值,这时候,就不需要每次验证值是否存在,如果确定一个可选量的值一定存在,那么我们使用 进行解包获取它的值,或者使用
Optional Binding。
let possibleString: String? = "An optional string."println(possibleString !) // 解包,我确定possibleString的值一定存在,不需要每次验证值let stringValue = possibleString! .hashValue //解包,这⾥里的 表⽰示“我确定这里的的possibleString⼀定是⾮非nil的。//Optional Binding,等价于上⾯面⼀行if let value = possibleString{ let stringValue = value.hashValue}
16、隐式解包的可选类型
隐式解包可选类型 当成自动解包的可选类型。即不是每次使用的时候 在变量、常量后面加 ,而是直接在定义的时候加 这些可选量定义为隐式解包的可选量(implicitly unwrapped optional)。
・隐式解包的可选量的声明格式为:在希望标为可选的类型名称后面,用感叹号 (!) 代替
问号 (?)。
・隐式解包的可选类型主要用在一个变量/常量在定义瞬间完成之后值一定会存在的情况。
主要用在类的初始化过程中。
//把 隐式解包可选类型 当成对每次使用的时候⾃动解包的可选类型。即不是每次使⽤用的时候 在变量/常量后面 加 ,而是直接在定义的时候加 let assumedString: String! = “An implicitly unwrapped optionalstring.”
总结以上是内存溢出为你收集整理的Swift基础全部内容,希望文章能够帮你解决Swift基础所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)