关注Swift好久了,现在准备好好学习一下,使用Playground练习Swift语法再好不过了, 但是新建一个Playground,准备上手的时候还有点不会用,打开后我专门去找执行图标, 试了遍上面所有得图标也没有一个正确的,囧...
后来随便一个写了个print语句,右侧就有结果了;原来Playground是自动执行的...
Swift语言有些语法都跟C++、Java等语言类似,比如注释什么 我练习也不按套路,就从平时编程用到最多的语法开始。
以下练习使用的Xcode 7,使用Swift 2.0语法
定义变量/常量
- 变量
变量/常量的定义可以不指定类型,在赋值时Swift会自动判断; 语句结尾不需要分号;
var str = "hello world"
//或
var welcomeMessage: String = "Hi Swift"
//定义常量
let URL = "http://www.aswifter.com"
输出字符串
var str = "hello world"
print(str)
println在swift 2.0里已经没有了,直接使用print吧
- print语句中可以直接使用变量/常量,使用"()"包含变量/常量即可。
let URL = "http://www.aswifter.com"
print("我的博客地址:(URL)")
循环语句
for index in 1...5 {
print(index)
}
1...5 表示一个Range,表示从1到5。 这个条语句在Playground执行结果就显示了“5 times”, 我要看详细结果怎么办,找了半天,终于被我发现了,如下图:
普通的for语句,while语句,do..while语句都与C语言的一样,略过~~
集合类型
数组
var shoppingList = ["牛奶","面包"]
//或
var shoppingList2: [String] = []
同样因为类型自动推断,我们可以不指定类型, 创建空数组可以用第二种方式。
-
增加元素 //添加一个元素
shoppingList.append("西瓜")
//添加数组
shoppingList += ["西瓜","苹果"] "+="表达式不能直接加上一个字符串,只能拼接数组。
-
访问元素 经典的下标访问 var firstItem = shoppingList[0] 同时修改多个元素 shoppingList[0...1] = ["香蕉","哈密瓜"]
-
删除元素 let mapleSyrup = shoppingList.removeAtIndex(0) 删除会返回当前被删除的元素
-
遍历数组 for item in shoppingList {
print(item)
}
Set集合
-
创建Set var letters = Set<Character>()
//或
var favoriteGenres: Set = ["Rock","Classical","Hip hop"]
-
插入删除元素 favoriteGenres.insert("Jazz")
let removedGenre = favoriteGenres.remove("Rock")
-
集合操作
- 使用union(_:)方法根据两个集合的值创建一个新的集合。
- 使用subtract(_:)方法根据不在该集合中的值创建一个新的集合。
- 使用intersect(_:)方法根据两个集合中都包含的值创建的一个新的集合。
- 使用exclusiveOr(_:)方法根据值在一个集合中但不在两个集合中的值创建一个新的集合。
//集合操作
let oddDigits: Set = [1,3,5,7,9]
let evenDigits: Set = [0,2,4,6,8]
let singleDigitPrimeNumbers: Set = [2,7]
oddDigits.union(evenDigits).sort()
// [0,1,8,9]
oddDigits.intersect(evenDigits).sort()
// []
oddDigits.subtract(singleDigitPrimeNumbers).sort()
// [1,9]
oddDigits.exclusiveOr(singleDigitPrimeNumbers).sort()
// [1,9]
字典
-
创建字典 var airports: [String:String] = ["TYO": "Tokyo","DUB": "Dublin"]
//或
var airports = ["TYO": "Tokyo","DUB": "Dublin"]
//创建空字典
var namesOfIntegers = Dictionary<Int,String>()
-
访问字典 print(airports["TYO"])
airports["TYO"] = "Beijing"
//添加
airports["LHR"] = "London"
//删除
airports["LHR"] = nil
-
字典遍历 for (airportCode,airportName) in airports {
print("(airportCode): (airportName)")
}
参考资料
The Swift Programming Language 中文版 The Swift Programming Language 2.0 官方教程
中文版的教程有些老了,还是基于Swift 1.0的,有些函数已经发生了变化,可以对照看官方教程。
本文作者: 阳春面 原文地址:http://www.aswifter.com/2015/07/12/learn-swift-with-playground-1/
欢迎关注我的微信公众号,分享Android 开发,IOS开发,Swift开发和互联网内容 微信号:APP开发者
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|