swift 历史

swift 发展史

swift 简介

Swift 是一种非常好的编写软件的方式,无论是手机,台式机,服务器,还是其他运行代码的设备。它是一种安全,快速和互动的编程语言,将现代编程语言的精华和苹果工程师文化的智慧,以及来自开源社区的多样化贡献结合了起来。编译器对性能进行了优化,编程语言对开发进行了优化,两者互不干扰,鱼与熊掌兼得。

Swift 对于初学者来说也很友好。它是第一个既满足工业标准又像脚本语言一样充满表现力和趣味的系统编程语言。它支持代码预览(playgrounds),这个革命性的特性可以允许程序员在不编译和运行应用程序的前提下运行 Swift 代码并实时查看结果。

Swift通过采用现代编程模式来避免大量常见编程错误:

  • 变量始终在使用前初始化。
  • 检查数组索引超出范围的错误。
  • 检查整数是否溢出。
  • 可选值确保明确处理 nil 值。
  • 内存被自动管理。
  • 错误处理允许从意外故障控制恢复。

Swift 代码被编译和优化,以充分利用现代硬件。语法和标准库是基于指导原则设计的,编写代码的明显方式也应该是最好的。安全性和速度的结合使得 Swift 成为从 “Hello,world!” 到整个操作系统的绝佳选择。

Swift 将强大的类型推理和模式匹配与现代轻巧的语法相结合,使复杂的想法能够以清晰简洁的方式表达。因此,代码不仅更容易编写,而且易于阅读和维护。

Swift 已经进行了多年,并且随着新特性和功能的不断发展。我们对 Swift 的目标是雄心勃勃的。我们迫不及待想看看你创建的内容。

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 。类型安全可以帮助你在开发阶段尽早发现并修正错误。

简单值

使用 let 来声明常量,使用 var 来声明变量。一个常量的值,在编译的时候,并不需要有明确的值,但是你只能为它赋值一次。这说明你可以用一个常量来命名一个值,一次赋值就即可在多个地方使用。

let  myname = "balabala"

var  yourName = "xiaomoxian"

这里我们并没有显示指定 myname 的类型.常量或者变量的类型必须和你赋给它们的值一样。然而,你不用明确地声明类型,声明的同时赋值的话,编译器会自动推断类型。在上面的例子中,编译器推断出 myVariable 是一个整数类型(integer)因为它的初始值是整数。

如果初始值没有提供足够的信息(或者没有初始值),那你需要在变量后面声明类型,用冒号分割。

练习:
创建一个常量,显式指定类型为 Float 并指定初始值为 4

let  num:Float = 4

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

let label = "The width is"
let width = 94
let widthLabel = label + String(width)

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

let apples = 3
let oranges = 5
let appleSummary = "I have \(apples) apples."
let fruitSummary = "I have \(apples + oranges) pieces of fruit."

字符串之间的拼接

let city = "北京欢迎你"

let welcome = "奥林匹克\(year)"+city

print(welcome)

let city = "北京欢迎你"

let welcome = "奥林匹克\(year)"+city

let welcome1 = "奥林匹克\(year + one)" + city

print(welcome)
print(welcome1)

swift 中的数组

Swift 要求一个数组要能正常使用 得满足两点
1. 数组一定要初始化,初始化时可以赋值,也可以直接=[] 表示一个空数组
2. 必须要指定数据类型,可以通过赋值的方式让编译器自动识别数据类型,也可以自己指定。

例如:

var arr1=[];
arr1.append(11)
此处由于违反了 第二条没有指定数据类型,所以是错的


var arr2:[String]
arr2.append("test")
此处虽然指定了数据类型,但是违反了第一条没有初始化,所以也是错的
    原文作者:币圈研究生
    原文地址: https://www.jianshu.com/p/d723a576aff6
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞