Swift学习:基础部分(The Basics)

Posted CHM

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swift学习:基础部分(The Basics)相关的知识,希望对你有一定的参考价值。

  Swift 是一门开发 ios macOS watchOS  和 tvOS 应用的新语言。然而,如果你有 C 或者 Objective-C 开发经验的话,你会发现Swift 的很多内容都是你熟悉的。

  Swift 包含了 C 和 Objective-C 上所有基础数据类型, Int 表示整型值; Double 和 Float 表示浮点型值; Bool 是布尔型值; String 是文本型数据。 Swift 还提供了三个基本的集合类型, Array , Set 和 Dictionary ,详见集合类型。

  就像 C 语言一样,Swift 使用变量来进行存储并通过变量名来关联值。在 Swift 中,广泛的使用着值不可变的变量,它们就是常量,而且比 C 语言的常量更强大。在 Swift 中,如果你要处理的值不需要改变,那使用常量 可以让你的代码更加安全并且更清晰地表达你的意图。

  除了我们熟悉的类型,Swift 还增加了 Objective-C 中没有的高阶数据类型比如元组(Tuple)。元组可以让你创建或者传递一组数据,比如作为函数的返回值时,你可以用一个元组可以返回多个值。

  Swift 还增加了可选(Optional)类型,用于处理值缺失的情况。可选表示 “那儿有一个值,并且它等于 x ” 或者 “那儿没有值” 。可选有点像在 Objective-C 中使用 nil ,但是它可以用在任何类型上,不仅仅是类。可选类型比 Objective-C 中的 nil 指针更加安全也更具表现力,它是 Swift 许多强大特性的重要组成部 分。

  Swift 是一门类型安全的语言,这意味着 Swift 可以让你清楚地知道值的类型。如果你的代码期望得到一个 String ,类型安全会阻止你不小心传入一个 Int 。同样的,如果你的代码期望得到一个 String ,类型安全会阻止你意外传入一个可选的 String 。类型安全可以帮助你在开发阶段尽早发现并修正错误。

  常量和变量

  常量和变量把一个名字(比如 maximumNumberOfLoginAttempts 或者 welcomeMessage )和一个指定类型的值(比如数字 10  或者字符串 “Hello” )关联起来。常量的值一旦设定就不能改变,而变量的值可以随意更改。

  声明常量和变量

  用 let 来声明常量,用 var 来声明变量。

  let maximumNumberOfLoginAttempts = 10

  var currentLoginAttempt = 0

  声明一个名字是 maximumNumberOfLoginAttempts de 新常量,并给它一个值 10。然后,声明一个 名字是 currentLoginAttempt 的变量并将它的值初始化为 0。

  在这个例子中,允许的最大尝试登录次数被声明为一个常量,因为这个值不会改变。当前尝试登录次数被声明为一个变量,因为每次尝试登录失败的时候都需要增加这个值。

  可以在1??行中声明多个常量或者变量,用逗号隔开:

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

  类型标注

  当你声明常量或者变量的时候可以加上类型标注(type annotation),说明常量或者变量中要存储的值的类型。如果要添加类型标注,需要在常量或者变量名后面加上一个冒号和空格,然后加上类型名称。

  var welcomeMessage: String

  这个变量只能存储 String 类型的值。

  声明中的冒号代表着 "是...类型",所以这行代码可以理解为:

  “声明一个类型是 String,名字是 welcomeMessage 的变量。”

  “类型是 String ” 的意思是 “可以存储任意 String 类型的值。”

  welcomeMessage 变量现在可以被设置成任意字符串:

  welcomeMessage = "Hello"

  你可以在一行中定义多个同样类型的变量,用逗号隔开,并在最后一个变量名之后添加类型标注。

  var red, green, blue: Double

  注意:

  一般来说你很少需要写类型标注。如果你在声明常量或者变量的时候赋了一个初始值,swift 可以推断出这个常量或者变量的类型。在上面的例子中,没有给 welcomeMessage 赋初始值,所以变量 welcomeMessage 的类型是通过一个类型标注指定的,而不是通过初始值推断的。

  

 

以上是关于Swift学习:基础部分(The Basics)的主要内容,如果未能解决你的问题,请参考以下文章

云原生渐进式交付,刷 Argo CD 技术文档之 Understand The Basics & Core Concepts 篇

PTBtutorials—The basics

翻译:T-SQL进阶:超越基础Level9:动态T—SQL代码(Stairway To T—SQL: Beyond The Basics Level9: Dynamic T—SQL Code);原文地

WCF Basics - FAQs SeriesWCF基础----问答系列教程

#翻译#通往t - sql的阶梯:超越基本级别3:构建相关子查询,原文链接:Stairway to T-SQL: Beyond The Basics Level 3: Building a Corre

Swift 5 中的 THE.self 是啥?