• 变量&流程控制&函数


    Swift初步

    1、第一个swift程序。

      

      You don’t need to import a separate library for functionality like input/output or string handling. Code written at global scope is used as the entry point for the program, so you don’t need a main function. You also don’t need to write semicolons at the end of every statement.

      不需要import任何库,像输入/输出之类的。代码直接写在全局,全局的第一行代码作为程序的entry point。 行尾也不需要冒号。

    2、Constant & Variable。

      

      let定义常量,var定义变量。若没指定类型,则根据value自动推导。若要强制指定类型,则按如下方式:

      

      swift中无隐式转换,若要将一种类型转换为另一种类型,必须显式转换,如下:

      

      转变为String类型,还可以使用()方法,如下:

      

    3、使用[]来创建array或dictionary。以及引用[]来访问array与dictionary中的元素。

      

      可以像如下方法一样创建空array或dictionary:

      

      

    4、流程控制语句包括if、switch、for-in、while、do-while。对condition的引用可以不加(),但对流程body的引用需要加{}。

       

      其中if的condition必须是带布尔运算符的表达式,不允许为一个int。

     5、optional变量,if&let

      

      if、let、?变量,三者共同作用。

    6、switch支持任意数据类型,以及支持任意的比较。switch的一个case支持多个value,另外每一个case内部不用写break。

      

    7、通过提供 (key,value)给for in,即可遍历dictionary:

      

    5、while语句

      

    6、使用 .. 来表示数列,注意是2个点。

      

    7、函数的定义与使用

       

      使用tuple可使函数返回多个值:

      

      支持变长参数:

      

      函数可以嵌套。嵌套的函数可以访问outer function中的局部变量。

      

    8、函数可以返回函数。

      

      函数可以作为参数传递:

      

    9、函数实际上是一种特殊的Closure,可以用{}来写一个匿名的Closure。使用in来分隔函数参数、返回类型与body。

      

      Closure可以写得更紧凑. When a closure’s type is already known, such as the callback for a delegate, you can omit the type of its parameters, its return type, or both. Single statement closures implicitly return the value of their only statement.

      

      作为函数最后一个参数的Closure可以在函数调用自的()之后定义,另外可以使用$N来引用参数:

      

  • 相关阅读:
    char/byte/short类型的加法和类型转换问题
    Java四种基本数据类型
    Git知识集锦
    解决给自己的博客添加百度统计不能验证的问题
    C++静态代码分析工具推荐——PVS-Studio
    Qt在控件未显示时如何获取正确的控件尺寸
    C#程序如何捕捉未try/catch的异常——不弹“XXX已停止工作”报错框
    win10下vs2015编译的程序如何运行在win7等系统(无需安装Redistributable)
    Qt分页导航控件
    win server 2008配置ftp无法登陆问题的解决办法
  • 原文地址:https://www.cnblogs.com/tekkaman/p/3783737.html
Copyright © 2020-2023  润新知