swift学习笔记一之常量和变量

Posted chips

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swift学习笔记一之常量和变量相关的知识,希望对你有一定的参考价值。

  本系列笔记是博主通过观看慕课网liuyubobobo讲师主讲的《玩儿转swift2.0》的课堂学习笔记并整理课堂上讲到的代码,也可通过慕课网app观看他的视频支持他,讲师的所有课堂代码在github上,以及更新的swift3.0的代码,建议还是先过一遍老师的视频,然后再自己敲一遍课堂代码,再反过来复习,相信一定有很大的帮助。

 

  在OC语言中,变量在声明之前要指明其类型,如

 

NSString *name = @"liuyubobobo";

  但是swift类型中,当然变量也有指定的类型,但是在声明的时候,只划分成常量和变量两种。

  常量在声明并初始化之后就不能再改变了,变量就是这个量的值可以被不断地改变

  常量用let关键字声明,变量用var关键字声明

let maxName = 1000

var index = 2

   swift语言特意将常量这个概念提到了和变量相同的高度,其实是鼓励开发者们去思考一个量到底是常量还是变量。很多时候,一个量在声明之后就不再改变了,这个时候苹果建议我们把这个量声明为let,这样这个量对整个计算资源的消耗更少,整个程序也就更加优化。

  上面的甩let声明的常量maxName,如果我们在playground中将其赋值为2000,那么编译器报错,并可自动将let关键字修改为var。利用这个特性,除非我们有非常明确的变量生命目的,很多时候我们可以放心将一个量声明为常量let,而这个量在以后的代码可能会被修改,那么可直接通过编译器将let修改为var。

  还有一点,跟其他语言不同的是,swift不需要要求在每个语句后强制使用分号,swift语言可以完全不写分号,除非在一行中书写多天语句时,必须显式地加上分号,当然啦,苹果不建议我们在一行书写多条语句,除非有非常明确的需求,

 

  我们发现,每个量在声明时都要加上let或var关键字,那么它们是什么类型的呢?事实上,swift语言有类型推断机制(tyoe inference),就是通过初始化的值推断这个量真正的类型,例如上面的例子中,两个量都被swift推断为Int类型,你可以通过对量使用option键看这个量真正的类型。swift语言是一个强类型语言,很多时候我们不需要想其他语言一样显式地表明一个量的类型。swift语言也支持显示地声明量的类型,例如

 

let website: String = "www.imooc.com"

var a, b, c: Double

 

以上是关于swift学习笔记一之常量和变量的主要内容,如果未能解决你的问题,请参考以下文章

swift 学习笔记之---常量与变量

《从零开始学Swift》学习笔记(Day58)—— Swift编码规范之变量或常量声明规范

Swift 2.0学习笔记(Day 6)——哎呀常量和变量都该什么时候用啊?

Swift学习笔记-教程学习一基础篇

Swift学习笔记-继续学习闭包

Swift学习笔记-继续学习闭包