The Swift Programming Language中文版 ----Language Guide(一)

---主要内容:常量和变量、输出、注释


1.基础知识


Swift是一种新的编程语言,用于iOS和OS X的应用程序开发。尽管如此,Swift中的许多地方用到的是你所熟悉的C和Objective-C的开发经验。

Swift提供了它自己版本的所有基于C和OC的基本数据类型。包括整型的Int、实型的Float、双精度型的Double、布尔型的Bool、字符串型的String。Swift还提供了强大的两个主要集合类型,Array和Dictionary.

像C一样,Swift使用标识符来对变量进行存储和引用。值不能改变的变量叫做常量。比C语言中的常量更强大的是,Swift中的常量会出现在全部代码中,使代码更安全,意图更明确。当你使用常量时,并不需要更改它的值。

除了熟悉的类型,Swift还引入了Objective-C中无法实现的高级类型。比如元组,他能够让你创建和传递元组中的值。元组可以将一个函数返回的单一的复合值转为多个值。

Swift还引入了自选类型,来处理不同情况下的值。 Optionals可以选择“有一个值,它等于x”,或者“没有一个值”, Optionals类似于OC中使用的nil指针。但是optinal可以指向任何类型,并不只是类。 Optionals更加安全,比OC中的nil指针更富有表现力。而且它是Swift所有强大功能的核心。

Optionals是Swift作为一种安全语言的表现。Swift可以帮你弄清你的值的类型,并且处理你的代码。如果您的代码部分需要一个字符串,类型安全会防止你传递一个错误的类型。这使你能够发现并尽可能早地在开发过程中修正错误。



2.常量和变量


常量和变量把名字(例如maximumNumberOfLoginAttempts或 welcomeMessage)和特定类型的值(例如数字“10”或字符串“Hello”)联系起来。一些常量在你设置一次后就不能被改变,而变量在设置初始值后还可以改变。


3.常量和变量的声明


常量和变量使用前必须先声明,在声明常量时使用 let 关键字,声明变量时使用 var 关键字。可以在记录用户登陆次数中用到。

let maximumNumberOfLoginAttempts = 10
var currentLoginAttempt = 0

以上代码可以被解读为:定义了一个被称为maximumNumberOfLoginAttempts的常量。同时给他一个值“10”。然后定义了一个被称为currentLoginAttempt的变量。同时给了它一个值“0”。

在这个例子中,允许的登录尝试的最大次数被声明为一个常数,因为最大的值从不改变。当前的登录尝试计数器被声明为一个变量,因为该值必须在每次登录尝试失败后递增。

你可以在一行上声明多个变量,但必须用“,”隔开。

var x = 0.0, y = 0.0, z = 0.0

注:如果在你的代码中存储的值不会改变,那么应该把它声明为一个常量。而变量仅用于存储需要改变的值。


4.类型说明

当你定义一个常量或变量时你可以提供一个tpye annotation,用于区分常量或变量存储的值的类型。在变量名后加一个“:”然后跟类型名,就可以明确变量的类型。

这个例子为变量WelcomeMessage提供了一个类型说明,用来表示该变量存储的数据类型为string类型。

var welcomeMessage: String

上面的代码中冒号的意思是“...of type...”。它可以被读作:定义了一个名叫WelcomeMessage的变量,它的类型为string。

“of type String”的意思是“可以存储string类型的数据或者是“把它看作“string类型的值可以存储”。

welcomeMessage变量现在就可以设置任何字符串而不被报错了。

welcomeMessage = "Hello"

注:在实际情况下,需要你说明类型的情况很少。如果你在定义变量或常量时给它一个初始值,那么Swift就会根据值来自动判断它的类型。在welcomeMessage的例子中,welcomeMessage在定义时并没有给初始值,所以该变量的值的类型就会通过类型说明来判断。


5.常量和变量的命名


在命名时,你几乎可以使用任何字符来命名常量或变量。包括Unicode。


常量和变量的命名不能使用数字符号、箭头、私有(或无效的)、横线或者方块等。可以使用数字,但不能以数字开头。

一个变量或常量只能被声明一次。不能重复声明,且声明后不能改变其存储类型。但可以将常量改为变量,或将变量改为常量。

注:如果你需要使用一个Swift关键字来声明不同的变量或常量,你可以在名字后加“ ’ ”。但是这种做法并不提倡。

你可以改变变量中的值,比如将变量friendlyWelcome的值从“Hello”改为“Bonjour”。

var friendlyWelcome = "Hello!"
friendlyWelcome = "Bonjour!"
// friendlyWelcome is now "Bonjour!

不同于变量,一个常量一旦被赋值,则无法改变,否则在编译时会报错。

let languageName = "Swift"
languageName = "Swift++"
// this is a compile-time error - languageName cannot be changed

6.常量和变量的输出

你可以使用println函数来输出变量或常量的当前值。

println(friendlyWelcome)
// prints "Bonjour!

println是一个全局函数,用于在一行代码结束后输出一个值。

使用println函数还可以直接打印字符串。

println("This is a string")
// prints "This is a string"
println还可以输出更复杂的信息。与Cocoa中的NSLog类似。

Swift可以使用字符串插入,插入的内容可以是常量或变量,用变量名来代替它的值,使用方法是\后加(变量名)。

7.注释

Swift中的注释与C基本一致。唯一不同的地方就是可以在一个块注释中再次嵌套一个块注释。如:

/*

/*

注释。。。

*/

*/

注释就是这些。在这里就不赘述了。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值