Swift学习日记--初识基本语法

Swift语言出来也有一段时间了,一直没有时间去研究它,因为公司的项目用的基本还是objec-c,个人认为swift语言在这两年肯定会用的比OC多,所以趁这个假期好好研究下它。


一、首先通过一行代码对Swift一个初步的认识

println ("hel lo, w orld ") 

如果你写过C或者Objective-C代码,那你应该很熟悉这种形式——在Swift中,这行代

码就是一个完整的程序。你不需要为了输入输出或者字符串处理导入一个单独的库。全局作

用域中的代码会被自动当做程序的入口点,所以你也不需要main函数。你同样不需要在每

个语句结尾写上分号。

注意:为了获得最好的体验,在Xcode当中使用代码预览功能。代码预览功能可以让

你编辑代码并实时看到运行结果。

使用方法如下:

Swift学习日记--初识基本语法_第1张图片
Swift学习日记--初识基本语法_第2张图片
Swift学习日记--初识基本语法_第3张图片

一、常量和变量的定义

1.1、使用let来声明常量,使用var来声明变量。一个常量的值在编译时并不需要获取,但是你

只能为它赋值一次。也就是说你可以用常量来表示这样一个值:你只需要决定一次,但是需

要使用很多次

例如:

let myName = "zhangsan"

var changedNum = 43

changedNum  = 54

1.2、常量或者变量的类型必须和你赋给它们的值一样。然而,声明时类型是可选的,声明的同时赋值的话,编译器会自动推断类型。如果初始值没有供足够的信息(或者没有初始值),那你需要在变量后面声明类型,用冒号分割。

例如:let score:Double = 70

1.3、值永远不会被隐式转换为其他类型。如果你需要把一个值转换成其他类型,请显式转换。

例如:

let firstName = "lisi"

let age = 87

let descirption = firstName + String(age)

有一种更简单的把值转换成字符串的方法:把值写到括号中,并且在括号之前写一个反斜杠。

例如:

let another  = "lisi age is \(age)"

二、字典和数组

使用方括号[]来创建数组和字典,并使用下标或者键(key)来访问元素。

2.1、数组的创建

例如:var names = ["zhangsan","lisi","wangwu","shabi"]

创建一个空数组的方式:

var emptyArray = [String]()

2.2、字典的创建

var dictionary = ["name":"shabi","age":"23"]

dictionary["age"]

注意:前面的时key值,后面的是Value值

空字典的创建

let emptyDictionary = Dictionary()

三、控制流

使用if和switch来进行条件操作,使用for-in、for、while和do-while来进行循环。包裹条

件和循环变量括号可以省略,但是语句体的大括号是必须的。

例如:

let  teseData = [23,45,65,76,43]

var max = 0

for data in teseData {

if data>max {

max = data

}

}

max

上面代码的意思是遍历这个数组并找出其中最大的数,在if语句中,条件必须是一个布尔表达式——像if data { ... }这样的代码是错误的。

3.1、你可以一起使用if和let来处理值缺失的情况。有些变量的值是可选的。一个可选的值可能是一个具体的值或者是nil,表示值缺失。在类型后面加一个问号来标记这个变量的值是可选的。

例如:

var optionalString:String? = "test"

if let test = optionalString {

println("我ture")

}

else {

println("我不跑")

}

如果变量的可选值是nil,条件会判断为false,大括号中的代码会被跳过。如果不是nil,会

将值赋给let后面的常量,这样代码块中就可以使用这个值了。

3.2、switch支持任意类型的数据以及各种比较操作——不仅仅是整数以及测试相等

let myMoon = "我的心情还是不错的哦"

switch myMoon {

case "娘娘腔在陪她玩":

let result = "毕竟娘娘腔,根本不是我对手,注定孤独一生"

case "小气鬼在陪他玩":

let result = "毕竟小气鬼,饭都不请吃,注定孤独一生"

case "说好的四点钟滚蛋呢":

let result = "说话不算数,注定孤独一生"

case "我的心情还是不错的哦":

let result = "哈哈,等你回来一起愉快的滚床单,嘎嘎嘎。。。"

default:

let result = "我们一起愉快的玩耍"

}

很明显上面的结果大家都知道,不好意思我是一个纯洁的程序员。

3.2、如何用for in来遍历字典,需要两个变量来表示每个键值对。

let testDic = ["key1":[34,34,34,23,342,43],"key2":[23,33,321,31,434],"key3":[4545,54,454,54,5,6]]

var maxS = 0

for (kind,Arr) in testDic {

for num in Arr {

if num>maxS {

maxS = num

}

}

}

maxS

结尾

感觉Swift语言写起来要简洁很多,不需要写分号,有些小括号也可以省略,这也只是我对这个语言的一些初步见解,如有错误,望指正!下午就写到这里吧,程序员的女神跟别人看电影还没回来,内心焦躁学不进去了,打电话去了。

你可能感兴趣的:(Swift学习日记--初识基本语法)