2、Swift入门教程(1)(完)_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > 2、Swift入门教程(1)(完)

2、Swift入门教程(1)(完)

 2014/6/5 19:00:49  HalfmanG2  博客园  我要评论(0)
  • 摘要:一般情况下,当我们学习一种新语言的时候,我们都会写一个HelloWorld小程序,在swift中,我们可以通过一行内容来实现。println("Hello,world")//注释:输出HelloWorld如果你写过C与OC的代码,这个语句对你来说可能很熟悉,在swift中,这样一行代码是一个完整的程序,你并不需要去为它导入一个其他的功能库,类似input/output或者字符串句柄。写在全局范围的代码会被作为程序的入口,所以你不需要一个main函数,你也不需要在每个语句的最后写上分号
  • 标签:教程

 一般情况下,当我们学习一种新语言的时候,我们都会写一个Hello World小程序,在swift中,我们可以通过一行内容来实现。

println("Hello,world") //注释:输出HelloWorld

如果你写过C与OC的代码,这个语句对你来说可能很熟悉,在swift中,这样一行代码是一个完整的程序,你并不需要去为它导入一个其他的功能库,类似input/output或者字符串句柄。写在全局范围的代码会被作为程序的入口,所以你不需要一个main函数,你也不需要在每个语句的最后写上分号。

这个入门教程通过一系列的小程序来帮助你使用swift来编写程序。如果你无法理解其中的某些内容,请不要觉得担心,因为这本书的最后都会有更详细的解释。

提示
基于经验,你最好在xcode中打开playground来查看本章内容的代码。
playground可以让你编辑代码,并且立刻看到效果

 

值类型

我们使用let关键词来定义常量,并使用var关键词来定义变量,常量的值在编译时可以不确定,但你只能为他赋一次值(译者注:你可以为常量赋一个变量,编译时并不知道变量的值,但你只能为常量复值一次,在定义的时候)。这意味着你可以为一个值起一个名字,然后在许多地方被使用到(译者注:类似宏定义

var myVariable = 42

myVariable = 50

let myConstant = 42

注释:定义了一个变量myVariable,初始值为42,然后改变了改值
第三句定义了一个常量,值为42

变量与常量的值必须与你的值类型相同,但你并不需要定义时就明确类型,你为变量与常量创建值的时候编译器会自动定义他的类型,在如上的例子中,编译器会找到myVariable为整型,因为它的初始值为整型。(译者注:可以写个小例子,将一个变量初始值为整型,然后赋String值,会报错,说类型不能转换)

若初始化的值并未提供了足够的信息、或更本为提供初始值,可以使用在变量或常量名后跟上冒号与类型来定义类型(译者注:言外之意就是,如果没初始值,或者初始值与你想要的类型不同,你必须提供一个类型,这个编译器自动类型匹配好鸡肋,是项目不稳定的一个发生点,建议最好都定义上类型)

let implicitInteger = 70
let implicitDouble = 70.0
let explicitDouble: Double = 70
注释:第三种为强制定义double型

 

测试

尝试创建一个常量绝对定义为Float型,然后传入一个4的值

 

值不能被隐式转换为其他类型,明确需要转换的类型

 

let label = "The width is "
let width = 94
let widthLabel = label + String(width)

注释,width会成为Int型,label是String型,然后通过String()将width转换为String型,并与label合并赋给widthLabel

 

测试

尝试去除上面的String()看看会出什么错(译者答案:运算符+重载失败)

 

还有一个更简单的方式来将值转换为String,通过”\(…)”这样的方式,例如:

 

let apples = 3
let oranges = 5
let appleSummary = "I have \(apples) apples."
let fruitSummary = "I have \(apples + oranges) pieces of fruit.

注释:String转换运算符,注意这个运算符只能用在“”中

 

测试

使用\()运算符来将一个浮点型

 

class="p1">创建一个数组或者字典,可以使用[]运算符,然后将元素与数组序号或字典键值写在[]中,例如:

 

var shoppingList = ["catfish", "water", "tulips", "blue paint"]
shoppingList[1] = "bottle of water"

var occupations = [
"Malcolm": "Captain",
"Kaylee": "Mechanic",
]
occupations["Jayne"] = "Public Relations

注释:数组、字典的定义与元素的定义

 

可以使用初始化语句来创建一个空数组或字典,例如:

 

let emptyArray = String[]()
let emptyDictionary = Dictionary<String, Float>()

 

如果类型星系可以在随后的代码中被推测到,可以通过创建一个不指明类型的数组与不指明类型的字典,通过空的[]或[:],例如:

 

var shoppingList = []

var shoppingDict = [:]

注释:创建一个空数组与一个空字典

 

第一部分完

上一篇: Android的Button按钮,ACTION_UP事件不触发解决方案 下一篇: 没有下一篇了!
发表评论
用户名: 匿名