学习Swift和iOS开发第3部分:编程和变量
在这篇激动人心的文章中,我们将讨论变量,运算符以及有关计算机如何工作的一些知识。 这不是理论系列,但是我希望您了解引擎盖下发生的一些基本原理,以便您可以建立基础。
变量在编程中用于存储可以在计算机程序中引用和操纵的信息。 它们还提供了一种使用描述性名称标记数据的方法,以便其他程序员和我们自己可以更清楚地理解我们的程序。
如果有帮助,可以将变量视为保存信息的容器。 它们的唯一目的是标记数据并将其存储在内存中,以便以后在程序中使用。
这是变量是什么以及变量如何工作的基本原理,但是现在您将在Xcode中创建一些变量,以帮助您了解变量在软件开发环境中的工作方式。
首先,如果尚未打开Xcode,请点击Create New Playground
。 给它起一个像Variables这样的名称,然后单击Next
。 选择某个位置以保存此.playground文件,然后单击“ Create
以保存它。 您应该会看到类似下面的屏幕。
Xcode中的游乐场是一种测试代码段以查看代码是否以及如何工作的神奇方法。 作为我的讲师,这也是在Swift中教您基本编码原理的好方法。
默认情况下,我们刚刚创建的Playground已经包含一个变量。 上图显示了以下代码。
var str =“你好,操场”
无论您在哪里看到var
,都是变量的缩写。 您告诉计算机要创建一个变量(要将数据放入其中的容器)。 在大多数情况下,我们可以根据需要命名,但不允许使用某些名称。 例如,我们不能将数字放在变量名前面(即“ 2WeeksPay”),但是可以先使用单词,然后使用数字(即“ day1”)。 您也不能使用Swift库使用的某些保留关键字,例如let
或enum
或class,
因此请避免使用它们。
变种
在这种情况下,让我们使用message作为变量的名称。 变量应始终具有描述性,并应告诉您变量中存储了什么。 据说您应该像第一个孩子一样谨慎地命名变量。
var消息
要给变量赋值,就像在任何数学方程式中一样,我们需要使用等号来表明变量等于某物。
var message =
我们在变量中存储了一些单词,其名称为String
。 要声明String
,必须使用双引号,如下所示:
var message =“在此处插入字符串信息…”
我们在此处编写的代码的关键术语是String Literal
因为我们为String Literal
提供了固有的值。
稍后,我们将看到如何创建一个带有空值或根本没有值的字符串。
让我们通过从引号中删除“ Insert String information here…
,并将其替换为“ Hello,Playground”,将变量message
的值更改为“ Hello,playground”。
这是您的第一个变量。 数据类型是一个字符串,由字符和单词组成。 该信息将存储在变量中。
在后台,该程序在Mac上运行,因此实际上存储在计算机上很酷的地方的内存中! 所有这些对我们来说都是自动发生的。
因此,在回顾中,我们通过指定var
创建了一个变量,给它一个描述性名称,然后给它一个String值,“ Hello,操场”。
变量可以根据需要多次更改。 存储在其中的数据可以根据我们的应用程序的需要进行更改。 当我们将其与常量进行比较时,我们将在以后再讨论。
一会儿,让我们谈谈运算符。 Swift中有3种运算符-一元,二进制和三元。 但是这些话到底意味着什么?
一元运算符仅影响一个目标。
例如,您可以创建一个称为amICool的布尔值(真/假值):
var amICool = true
基于上面的代码,我绝对很酷。 😎
然后说出一种新的时尚或趋势,我还没有开始……所以现在我“不爽”了。 好了,现在我们可以使用一元前缀运算符来更改它:
var amICool = true
amICool =!amICool // //这是一元运算符。
一元运算符基本上会将我们的变量amICool
的值求amICool
。 现在amICool
是错误的,因为它与amICool
相反。
可悲的是,我不再酷,因为我没有遵循新的时尚或潮流。 😭
一元运算符会影响一个目标,而二元运算符会影响两个目标。
二元运算符有两个目标。
在大多数代码中,它们经常被看到,因为大多数变量和常量都依赖于另一个值来完成其工作。 这里有些例子:
var accountBalance = 9.00
var isBatmanAmazing = true
var officialJobDescription =“疯狂科学家和稀有奶酪鉴赏家”
以上所有代码行都在两个目标上运行-变量名称(即isBatmanAmazing)和等号后的值(即true
)。
三元运算符影响三个目标。
现在,我们将添加另一个名为feelGoodAboutMyself
变量,并将其值设置为true
。
var feelGoodAboutMyself = true
那是一个变量,它是布尔型的。 我们将true
值存储到此变量中。 现在,让我们使用三元运算符只是为了好玩。
var feelGoodAboutMyself = true
feelGoodAboutMyself = amICool吗? 真假
在三元运算符中,问号(?)表示“ if”,冒号(:)表示“ otherwise”。
上面的代码意味着,如果amICool
值为true
,则应将feelGoodAboutMyself
设置为true
,否则应将其设置为false
。
它是三元运算符,因为它可以在3个目标上工作amICool
, true
和false
。
另一个变量示例
在您的Playground文件中,创建一个名为bankAccountBalance
的变量并将其设置为等于100。
var bankAccountBalance = 100
接下来,创建一个名为cashRegisterMessage
的变量。 我们希望有一条消息可以打印出来,供想要在商店购买商品的人使用。
var bankAccountBalance = 100
var cashRegisterMessage =“你被开玩笑了。”
现在创建一个名为itemPrice
的变量并将其值设置为60。
var bankAccountBalance = 100
var cashRegisterMessage =“你被开玩笑了。”
var itemPrice = 60
我们还将编写一个三元运算符,以检查我们的银行帐户余额是否大于或等于50。如果运算符返回true
,则您可以购买该商品,否则,您将无法购买该商品,因为你破产了。
var bankAccountBalance = 100
var cashRegisterMessage =“你被开玩笑了。”
var itemPrice = 60
bankAccountBalance> = itemPrice? “商品已购买!” :CashRegisterMessage
现在,将商品价格更改为150,并添加以下条件if / else语句(有关更多信息,请参见后续文章)。
var bankAccountBalance = 100
var cashRegisterMessage =“你被开玩笑了。”
var itemPrice = 150
如果bankAccountBalance> = itemPrice {
cashRegisterMessage =“已购买物品!”
打印(cashRegisterMessage)
}其他{
打印(cashRegisterMessage)
}
您在Playground窗口右侧的控制台输出中注意到什么变化? “你是在开玩笑。”
上面的if / else代码表示,如果bankAccountBalance
的值大于或等于itemPrice
,则应将cashRegisterMessage
设置为“Item purchased!”
cashRegisterMessage
“Item purchased!”
,否则应将其设置为我们设置的默认消息。
我们稍后还将学习其他运算符,例如用于加,减,乘和除的数学运算符。 甚至还有一个余数运算符用于除法并仅获得结果的余数。 稍后我们将详细讨论。
包起来
这篇文章是有关变量如何工作以及变量是什么的立交桥。 我们讨论了一元运算符,二元运算符和三元运算符。 您了解了可以通过以关键字var
开头并给该容器一个描述性名称(例如bankAccountBalance
来创建一个名为变量的容器。
您了解到可以将一个值存储在该容器中,例如字符串(文本),布尔值(真/假)或什至数字(整数/小数)。 您可以使用赋值运算符(等号)来赋值。
最后,我想鼓励您进一步研究! 在线搜索三种类型的运算符,然后查找什么是变量。 了解这些内容很重要,因为您想成为一名优秀的程序员!
在下一篇文章中,我们将学习有关函数的所有知识。 到时候那里见!
行使
创建4个变量来保存以下类型的数据:
- 您的名字(字符串)
- 您的年龄(以整数为单位)
- 您所在位置的温度(两倍)
- 关于您自己的真实情况(布尔)