iOS Swift教程-学习语言基础

Swift是一种非常容易学习的编程语言,因为其语法易于遵循。 在本iOS Swift教程中,我们将介绍一些Swift语言基础知识,并且我们将了解使用Swift编程语言进行开发的过程是多么容易。

在开始构建iOS应用之前,我们需要了解Swift语言的基础知识,并了解它们如何协同工作,然后才能构建所需的出色应用。 在本教程和所有后续教程中,我们将使用Swift 3。

定义变量

变量用于存储值,以后可以在程序中对其进行操作。

首先,让我们创建一个新的游乐场并保存。 然后清除所有游乐场内容。

要定义变量,请使用关键字var,后跟变量名称,如下所示:

var myvar

您可以为变量使用任何名称,但不能以类似以下的数字开头变量名称:

var 2myvar

上面的定义是不正确的,但是您可以包含如下数字:

var myvar2

使用所需的任何变量名,但要具有描述性。

要为该变量分配值,请使用等号,如下所示:

var myvar =“您好,LikeGeeks访问者,欢迎使用iOS Swift教程”

字符串插值

要打印字符串并包括其他类型的值,可以使用字符串插值\()进行如下转换:

var var1 = 100 var var2 =“您好,我口袋里有$ \(var1)”

var var2 =“你好,我口袋里有$ \(var1)”

您不仅限于字符串变量,还可以在Swift中定义不同类型的变量。

var var1 = true var var2 = 50

第一个变量var1是布尔类型。 您可以对布尔类型使用true或false。

第二个变量var2是整数类型,或者用Swift语言命名为Int。

在Swift中,您不需要键入变量类型,而该类型则是类型推断

Xcode根据提供的值检测变量类型,因此,如果在引号之间为变量分配值,则表示变量是字符串,如果键入整数作为值,则表示变量类型为Int等,

您可以像这样显式定义变量类型:

var var1:字符串=“欢迎使用Swift教程” var var2:Bool = true var var3:Int = 50

var var1:字符串=“欢迎使用Swift教程”

您不需要显式定义这些类型,但是有时是必要的,因为我们将在以后的文章中看到。

定义常数

常量就像变量一样,但有一个例外,如果它需要一个值,则无法对其进行更改。

要定义一个常量,请使用如下的let关键字:

let var1 =“欢迎使用Swift教程” let var2 = 100 let var3 = true

let var1 =“欢迎使用Swift教程”

如果您尝试更改这些常量中的任何一个,Xcode都会显示一个错误,将let更改为var以便可以对其进行修改

let var1 =“欢迎使用Swift教程” let var2 = 100 let var3 = true var1 =“你好”

let var1 =“欢迎使用Swift教程”

处理数组

该数组是一组值,因此您可以定义一个包含所有这些值的数组,而不是定义多个变量。

您可以这样定义一个数组:

var myarr = [10,20,30,40,50]

您可以通过基于零的索引访问数组的任何元素,因此第一个元素的索引为零。

要将项目追加到数组,请使用如下的append函数:

var myarr = [10,20,30,40,50] myarr.append(60)

var myarr = [10,20,30,40,50]

您可以像这样检查数组计数:

myarr.count

另外,您可以使用remove函数从数组中删除项目,如下所示:

var myarr = [10,20,30,40,50] myarr.remove(at:3)

var myarr = [10,20,30,40,50]

索引从零开始,因此3表示第四个元素。

如果需要定义一个空数组,可以这样:

您必须明确定义类型,在这种情况下为字符串。

定义字典

字典就像数组,但是它们是键值对,其中键必须是唯一的。

有时最好在数组上使用字典,因为查找特定项目要容易得多。

使用数组时,各项按数字顺序排列,但是如果需要查找特定信息,则字典会更好。

您可以这样定义字典:

var mydictionary = [String:String]()

在这里,我们定义了一个带有字符串类型键的字典,相应的值也是字符串。

要将项目添加到字典中,

mydictionary [“ OS”] =“ Mac OS” mydictionary [“ Mobile”] =“ iPhone”

mydictionary [“ OS”] =“ Mac OS”

mydictionary [“移动”] =“ iPhone”

您可以这样获得字典计数:

mydictionary.count

另外,您可以检查字典是否为空或不像这样:

mydictionary.isEmpty

如果您需要删除一个元素,可以这样做:

mydictionary [“ OS”] =零

要遍历项目,您可以使用for-in循环,如下所示:

for(mykey,myval)in mydictionary {print(mykey +“ ==>” + myval)}

for(mykey,myval)in mydictionary {

print(mykey +“ ==>” + myval)

要清除字典项,请使用[:]

mydictionary = [:]

While循环

现在,您创建数组并通过其索引获取任何元素,是时候遍历这些元素并对其进行处理。

要遍历数组元素,可以使用while循环,如下所示:

var myarr = [10,20,30,40,50] var x = 0,而x <myarr.count {myarr [x] = myarr [x] + 10 x = x + 1} myarr

var myarr = [10,20,30,40,50]

如您所见,数组元素的每个元素增加了10个。

循环内

循环的另一种类型是for-in循环。 使用for-in循环,您可以迭代一系列值。

您可以这样写:

var myarr = [10,20,30,40,50] for myarr {print(item)}

var myarr = [10,20,30,40,50]

使用for-in循环时,不需要像整数一样增加每个循环的时间,就像在while循环中所做的那样。

If-else陈述

您可以使用if语句来检查特定条件,例如:

var myvar = 100,如果myvar == 100 {print(“值是100”)}

打印(“值是100”)

您可以在底部的控制台窗口中查看结果。

另外,您可以使用如下else语句:

var myvar = 100,如果myvar == 100 {print(“值是100”)}否则{print(“值不等于100”)}

打印(“值是100”)

打印(“值不等于100”)

也许您有多个条件,可以这样使用else:

var myvar = 100,如果myvar == 100 {print(“该值是100”)}否则,如果myvar> 100 {print(“该值大于100”)}否则,{print(“该值小于100” )}

打印(“值是100”)

打印(“该值大于100”)

打印(“该值小于100”)

比较运算符

在上面的示例中,我们使用等于运算符==,但是,还有其他运算符可用于比较。

不等于:!=

大于:>

大于或等于:> =

小于:<

小于或等于:<=

您可以与上面的示例相同的方式使用它们。

数学运算

在Swift中,有许多运算符可用于执行数学运算。

您可以像这样执行四个基本的算术运算(+ — * /):

var sum = 5 + 5 var diff = 10-5 var乘法= 5 * 5 var divid = 25/5

您可以像其他任何编程语言一样使用模数运算符。

模运算符用于除以两个数时剩下的余数。

变量剩余= 20%3

迅捷函数

当您开始编码时,有时会发现整个文件中都重复了一些代码行。

您可以将这些行组合到一个函数中,一次编写一次,然后在任何地方多次调用。

要定义函数,请使用关键字func,如下所示:

func myfunc(){//您的代码在此处}

这是最简单的函数形式。 您可以像这样将输入或参数传递给函数:

func myfunc(var1:Int,var2:Int){//您的代码在此处}

func myfunc(var1:Int,var2:Int){

在此示例中,我们定义了一个接受两个Int类型参数的函数。

您可以这样定义返回类型:

func myfunc(var1:Int,var2:Int)-> Int {//您的代码在此处}

func myfunc(var1:Int,var2:Int)-> Int {

请注意,返回类型为Int。

让我们做一个将两个数字相加并返回总和的函数。

func getsum(var1:Int,var2:Int)-> Int {return var1 + var2}

func getsum(var1:Int,var2:Int)-> Int {

现在该函数已经准备就绪,我们所要做的就是通过它的名称来调用它:

getsum(var1:10,var2:15)

如您在右窗格中看到的,结果是25。

尝试使用不同的输入在不同的时间调用该函数并检查结果。

面向对象编程

OOP或面向对象编程是一种非常流行的编程模型,您可以像现实生活中那样将所有内容构造为对象。

类是面向对象编程的主要组成部分,它使您可以为对象创建蓝图。

在Swift中创建一个类非常容易,您可以使用class关键字来创建它,如下所示:

您可以像这样为此类的属性添加变量:

等级车{var speed = 400 var model =“ BMW” var engine =“” func move(){} func stop(){}}

我们刚刚创建的类只是一个蓝图,为了使用它,您需要创建一个这样的实例:

让mycar = car()

要在Swift中创建类的实例,只需在其名称后加上括号即可,如上所示。

创建实例后,创建的实例具有一个空引擎,因此我们为其指定一个值。

mycar.engine =“动力引擎”

同样,您可以像这样调用类的函数:

mycar.move()mycar.stop()

您可以创建所需的多个实例,并且每个实例都有自己的属性。

让mycar = car()mycar.engine =“动力发动机”让brocar = car()brocar.engine =“兄弟发动机”让ifecar = car()ifecarcar.engine =“妻子发动机”

mycar.engine =“动力引擎”

brocar.engine =“兄弟引擎”

ifeercar.engine =“妻子引擎”

对象继承

您已经创建了一个类,并且可以很好地完成其工作,现在您需要创建另一个类,该类的工作类似,但是有所不同,因此您可以继承该类,而不必再次重写在第一类中所做的工作并添加或修改您需要的内容。

假设我们的汽车类是基础类或父类:

等级车{var speed = 400 var model =“ BMW” var engine =“” func move(){print(“ Moving…”)} func stop(){}}

现在让我们从该类创建一个子类。

上面的代码将car类的所有属性和功能继承到了motocar,这是因为使用了冒号。

也许您需要覆盖新类中的某些函数,可以使用override关键字来覆盖它,如下所示:

motocar类:car {覆盖func move(){print(“快速移动……”)}}

如果创建motocar类的实例并尝试调用move函数,则应该看到覆盖的消息。

对象多态

OOP中另一个重要的概念称为多态性,它使您可以多次使用相同的函数名称,但是每个函数名称都有不同的参数,并且每个函数都具有不同的功能。

类书{func copy(){print(“ copying paper book”)}} func copy(path:String){print(“ copying pdf book”)}}

打印(“复印纸质书”)

func copy(path:String){

打印(“复制pdf书籍”)

在这里,我们有一个book类,其中有两个具有相同名称的函数,但是如果您深入了解,您会注意到传递的参数是不同的。

第一个复制函数不传递任何内容,而第二个复制函数传递一个字符串参数。

您可以有许多具有确切名称的函数,并且每个函数的功能完全不同,但是唯一的条件是,每个函数必须具有不同的参数。

如您所见,当我创建该类的实例时,它向我展示了复制函数的两个版本。

凉!!

在以后的文章中,我们将开始探索Xcode环境,并了解如何构建iOS应用。

我希望您发现该帖子对您有所帮助。 继续回来。

谢谢。