爱程序网

Swift学习笔记(一)

来源: 阅读:

  学了一段时间的swift,感觉语法很简单,和oc比已经精简到极致了。但是回过头来写代码,还是写不出来。所以从现在起写下笔记,来记录我学习swift的点点滴滴。

  首先我参考的是苹果官方的书籍 《The Swift Programming Language》,还买了一本书,关东升的《Swift开发指南》

  学编程,第一句代码一般都是“hello world”。swift也不例外,开篇的第一句就是在屏幕上打印“Hello world”,和oc的日志输出不一样,打印语句变成了和Java一样的println。语句末尾可以不加分号,但是我看着好别扭,估计是强迫症吧

  还记得初次学编程打印完 Hello world后遇到的是什么吗?对,就是变量和常量。在Swift中,用let关键字来声明常量,用var关键字来声明变量。如果没有接触过类似的语言,短时间内还适应不过来。我记得在后台语言中见到过这样的声明方式,不用我们声明类型,由编译器自动推断类型。

 

 

 

1 var myVariable = 42
2 
3 myVariable = 50
4 
5 let myConstant = 42 //这是常量,一旦赋值不可更改

 

 

声明时类型是可选的,声明的同时赋值的话,编译器会自动推断类型。如果初始值没有足够的信息,那么就需要在变量后声明类型:

 

1 let implicitInteger = 70
2 
3 let implictiDouble : Double = 70

 

 

在Swift中类型关键字首字母是大写,一时半会还适应不过来

 

接着就说到了类型转换,Swift中值永远不会被隐式转换

 

1 let label  = “hello”
2 
3 let width = 94
4 
5 let widthLabel = label + String(width)

 

 

首先用String()这个方法把整型变量转换成了字符串,然后用一个“+”连接两个字符串。而且和oc不同的是,字符串不用加“@”符号了。为什么我越看越像Java的语法?

 

这个是通过类型的类方法转换的,还有一种更简单的方式把值转换成字符串:

 

1 let apples = 3
2 
3 let appleSummary = “I have \(apples + 2) apples”

 

 

把值写到括号中,前面加一个反斜杠

 

突然想到一点

实际上,我们的变量名可以这样

 

1 let