swift体验1

一门新语言传统的入门方式是在屏幕上打印“Hello,wrold”。在Swift中你可以用下面一行 代码:

println("Hello, world")

如果之前你用过C或Objective-C语言,这个语法和Swift中类似,这一行代码是一个完整的 程序。对这样的输入/输出或字符串处理你不需要导入单独的库文件。代码写在全局范围内被用 做整个程序的入口点。所以你不需要一个主函数。你不需要写分号(;)结束每一个声明。

这个旅程会给你足够的信息让你开始用Swift编写代码完成各种各样的编程任务。如果有些东西 不理解不要担心。在本书接下来的部分每个细节都会有详细的解释。

注意: 为了有最佳的体验,在Xcode中以playground方式打开本章。Playground模式允许您编辑代 码清单并立即看到结果。

变量

let创建常量,用var创建变量。这个常量的值在编译期不需要知道,但是在创建时必须 初始化。这意味着你可以使用常量赋值一次,而用在许多地方。

var myVariable = 42
myVariable = 50
let myConstant = 42

一个常量或变量必须有相同的类型作为你想要分配给它的价值。然而,你并不总是需要编写显式 类型。提供一个值当你创建一个常量或变量值允许编译器推断它的类型。在上面的示例中,编译器 推断myVariable是一个整数,因为它的初始值是一个整数。

如果初始值不提供足够的信息(或者如果没有初始值),指定这一变量的类型,用冒号(:)隔开。

let implicitInteger = 70
let implicitDouble = 70.0
let eximplicitDouble: Double = 70

实验 用显示类型声明一个Float类型值为4的常量。

值从不隐式转换为另一种类型。如果您需要将一个值转换成不同的类型,明确想声明的类型。 的实例。

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

实验 试试删除最后一行转换为字符串。你得到什么错误?

有一个更简单的方法将值转换为字符串,用\(value)这种方式。例如:

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

实验 使用()包括一个浮点计算和一个字符串,包含在问候别人的名字中。

创建数组和字典使用方括号([]),和访问他们的元素通过编写索引或键在括号中。

var shoppingList = ["catfish", "water", "tulips",
"blue paint"]
shoppingList[1] = "bottle of water"

var occupations = [
    "Malcolm": "Captain",
    "Kaylee": "Mechanic",
]
occupations["Jayne"] = "Public Relations"

去创建一个空的数组或字典,用这个初始化语法。

let emptyArray = String[]()
let emptyDictionary = Dictionary<String, Float>()

如果可以推断类型信息,您可以编写一个空数组像这样[]和一个空的字典 像这样[:]。例如,当你为一个变量设置一个新值或传递一个函数的参数。

shoppingList = [] //去购物,买了一切

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏十月梦想

函数

                                            函数体

823
来自专栏Pythonista

面向对象进阶

反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问、检测和修改它本身状态或行为的一种能力(自省)。这一概念的提出很快引发了计算机科学领域关于应...

822
来自专栏偏前端工程师的驿站

一起Polyfill系列:Function.prototype.bind的四个阶段

昨天边参考es5-shim边自己实现Function.prototype.bind,发现有不少以前忽视了的地方,这里就作为一个小总结吧。 一、Function....

1846
来自专栏Python专栏

Python | 5分钟搞定 Python3 元组

元组(tuple)是一种静态的(immutable)或者说是不可变(unchangeable)的数据结构,里面的元素按照一定的顺序排列。它是静态的,所以元组里的...

1982
来自专栏新工科课程建设探讨——以能源与动力工程专业为例

2.2.1 js基本语法

1. var b=true;//定义布尔变量b,并赋值为true,js注释与C/C++完全相同,此处不详述

1142
来自专栏IMWeb前端团队

JavaScript强化教程——使用误区

本文为 H5EDU 机构官方 HTML5教程,主要介绍:JavaScript强化教程 —— 使用误区 JavaScript使用误区 本章节我们将讨论 JavaS...

1986
来自专栏Python中文社区

Python文档研读系列:zip函数

zip([iterable, ...]) This function returns a list of tuples, where the i-th tupl...

20610
来自专栏测试开发架构之路

总结了一些指针易出错的常见问题(一)

  简介:计算机是如何从内存单元中存取数据的呢?从程序设计的角度看,有两种办法:一是通过变量名;二是通过地址。程序中声明的变量是要占据一定的内存空间的,例如,C...

3569
来自专栏WindCoder

《简明 Python 教程》学习笔记-控制流

1.为内建的raw_input函数提供一个字符串,这个字符串被打印在屏幕上,然后等待用户的输入。一旦我们输入一些东西,然后按回车键之后,函数返回输入。对于raw...

640
来自专栏Python中文社区

Python有趣的解包用法

python中的解包可以这样理解:一个list是一个整体,想把list中每个元素当成一个个个体剥离出来,这个过程就是解包,我们来看下面这些例子(分为10个部分)...

1284

扫码关注云+社区

领取腾讯云代金券