Swift提供了一组内置数据类型,这些数据类型是字符串,整数,浮点数…

Swift提供了一组内置数据类型,这些数据类型是字符串,整数,浮点数和布尔值。
在大多数编程语言中也可以找到这些数据类型。

在本文中,我们将详细讨论每种数据类型。

我们将介绍的第一个数据类型是字符串。 一系列字符代表一个字符串。 字符串用于在应用程序中显示文本。 用引号引起来的字符串称为字符串文字。 在编程中,我们不能只向Playgrounds添加文本。 因此,要编写字符串,我们必须将字符串用引号引起来。

让我们在Playgrounds中添加一个用引号引起来的名称:

在“操场”中,您的值将显示在“结果面板”中。

整数数据类型

整数Ints )是整数(32和-100)。 当您需要执行计算(即加,减,乘等)时,整数很有用。 让我们向Playgrounds添加一些数字。 在下一行中,以您的名字键入32,然后在下一行中键入-100,如以下屏幕快照所示:

同样,您在名称下的结果面板中看到32和-100。

浮点数字

浮点数是具有小数部分的数字,例如4.993、0.5和-234.99。 让我们也将这些值添加到Playgrounds中:

布尔值

布尔值bool )被称为逻辑值,因为它们可以是true或false。 当您需要确定某些逻辑是对还是错时,请使用布尔值。 例如,用户是否登录? 该声明将为true(是),或者为false(否)。 因此,在Playgrounds中,添加true和false:

现在,我们已经介绍了Swift中的所有主要数据类型。 目前,我们无法使用这些数据类型。 使用数据是变量和常量起作用的地方。

变量和常量—存放数据的位置

变量和常量就像包含任何数据的容器。 当要声明变量时,必须使用var关键字。 让我们声明我们之前做过的每种数据类型,但是这次使用变量和常量代替。

用字符串创建变量

首先,删除您已经在Playgrounds中输入的内容。 让我们声明第一个变量,名为fullName,并将其设置为您的名字:

var fullName = “Craig Clayton” 

前面的代码说我们有一个名为fullName的变量,并且它拥有Craig Clayton的字符串值。 您的结果面板会显示您的真实姓名作为其数据:

创建一个带有整数(int)的变量

现在,通过添加以下内容,创建一个名为age的int变量并将其设置为您的年龄(或您希望的年龄)。

 年龄= 40 

我们的程序现在知道年龄是一个整数。 您应该在结果面板中同时看到您的姓名和年龄,就像您之前所做的那样:

Debug和print()-检测您的错误

我们可以使用print()来使用“调试”面板(在以下屏幕截图的底部)。 因此,让我们通过打印您的姓名和年龄来查看print()的工作方式。 您可以通过添加以下内容来做到这一点:

 打印(全名) 
打印(年龄)

它应该在屏幕上显示如下:

现在,您应该在“ 结果” 面板和“ 调试”面板中都看到输出。 使用print()允许我们在调试面板中查看内容,从而验证预期结果。 使用print()是一种方便的调试工具。

添加浮点数

现在,让我们在Playground中使用let常数添加浮点数:

 设gradeAvg = 2.9 
let版本:Float = 1.1

以下屏幕快照对此进行了演示:

您会注意到有些不同。 首先,我们使用let关键字。 使用let告诉我们的程序这是一个常数。 常量是一旦设置便无法更改的变量(与非常量变量相反,后者在设置后即可更改)。

您可能已经注意到的另一件事是,我们将版本明确设置为Float。 处理浮点数时,它可以是Double或Float。 不用太过专业,Double比Float精确得多。 解释此问题的最佳方法是以pi为例。 Pi是数字,数字永远存在。 好吧,我们不能使用永远持续存在的数字。 但是,Double和Float可以处理该数字的精确度。 查看下图,以了解我的意思是什么:

因此,在前面的示例中,您可以看到Float仅显示3.14,而Double为您提供了更准确的数字。 在Swift中,首选Double。 因此,如果未将浮点数显式设置为Float,则Swift默认为Double。 要将版本设置为Float,必须有目的地以这种方式进行设置。

创建一个布尔值

现在,该创建一个布尔了。 让我们使其恒定。 输入以下代码:

 让isConstant:Bool = true 

以下屏幕快照对此进行了演示:

由于设置了isConstant,因此添加以下内容使其为false:

  isConstant =假 

在与您刚才输入的内容相同的行上,您现在将看到一个红色圆圈,中间带有一个白点。 红色圆圈表示存在错误。 其中的白色圆圈表示Xcode(大多数情况下)可以为您解决错误:

您还会在调试面板中注意到一个错误,它只是该错误的更详细版本。 这个错误告诉我们,当我们无法更改常量的值时,我们正在尝试更改它。

如果点击圆圈,您将看到Playgrounds建议您将let更改为var,因为您无法为常量分配值:

由于我们希望它保持不变,因此我们删除isConstant = false行。 我们已经介绍了基本数据类型,但是我们还应该讨论其他一些编程基础知识。

为什么常量与变量?

您可能会问自己“为什么要使某些东西保持不变?”。 由于常量在您运行应用程序后无法更改,因此可以防止您意外破坏不应更改的值。 常量的另一个出色用法是用于基本URL,因为您不希望更改这些URL。 在获取数据时,您不希望在应用程序中途意外更改值。 Apple建议您尽可能使用let。 通常,我使用let直到Xcode警告我最好使用var。 如果我将值从let更改为var,那么我正在验证这是我想要的行为。

评论-留下笔记或提醒

注释是创建注释或提醒自己的好方法。 当您注释代码时,这意味着它将在您的代码运行时不执行。 有两种类型的注释://或/ * * /。 //用于单行注释,/ ** /用于文本块。

让我们看一下这两个样子:

类型安全性和类型推断

Swift是一种类型安全的语言,这意味着鼓励您清楚代码所使用的值类型。 类型推断意味着在代码运行之前,它会快速检查以确保您没有将任何内容设置为其他类型。 如果这样做,Xcode会给您一个错误。

为什么这样好? 假设您在商店中有一个应用程序,并且在代码的一部分中将一个变量设置为String,但是在代码的另一部分中无意中将同一变量设置为Int。 此错误可能会导致您的应用程序出现某些不良行为,从而导致其崩溃。 发现这些错误就像在大海捞针。 因此,类型检查可以帮助您避免使用不同类型时出现错误,从而帮助您编写更安全的代码。

现在,我们已经研究了数据类型,并且知道字符串用于文本数据,Int用于整数,Bool用于布尔,Double和Float用于浮点数。 让我们更深入地研究数据类型,看看除了将它们分配给变量之外,我们还能做更多的事情。

连接字符串

字符串串联是组合多个字符串文字以形成表达式的结果。 因此,让我们先输入两个字符串文字来创建一个:

结合这两个给我们一个字符串连接。 我们可以使用+运算符组合字符串。 添加以下内容:

 让全=名字+姓 

在“结果面板”中查看时,您会注意到我们的名字和姓氏之间没有空格。

同样,如果仅将变量放在引号中,它们将恢复为简单的字符串文字,并且不再是变量。

字符串插值

为了解决这个问题,我们可以将这些变量放在引号内,这称为字符串插值,在字符串插值内的每个变量周围使用反斜杠和括号。 让我们将name变量更新为以下内容,您将在Results Panel中的名称中看到空格:

  let full =“ \(名字)\(姓氏)” 

添加上一行之后,我们的代码应如下所示:

既然我们知道在引号内使用变量,就可以在print()内进行相同的操作。 让我们将firstName和lastName变量放入print()内,如下所示:

 打印(“ \(名字)\(姓氏”)) 

print语句非常适合检查您是否正在获取所需的值:

am! 现在,我们有一种方法可以查看print()内的多个变量,并通过组合多个字符串来创建字符串插值。

谢谢阅读! 如果您喜欢这个故事,请 单击 👏 按钮并共享 以查找其他人! 随时在下面 发表评论 💬 有意见吗? 让我们 在Twitter 上连接

如果您认为这篇文章对您有所帮助,则应查看 iOS入门12(第三版)

使用Swift 4.2和Xcode 10进行iOS应用开发的入门指南,适用 于初学者的iOS 12编程-第三版 将指导您完成iOS开发的各个方面。

通过Xcode和Swift,这是现代iOS开发的基石,您将迅速获得坚实的基础,开始更深入地进行开发之旅。