zoukankan      html  css  js  c++  java
  • Swift--基本数据类型

    一.常量和变量

    Swift语言对常量和变量的声明进行了明确的区分

    使用let关键字声明一个常量:

    let maxNmber = 18 //声明了一个常量 初始值为18, 常量的值是不能够改变的,

    使用var关键字声明一个变量:

    var number = 12   //声明了一个变量,初始值为12, 变量的值是可以改变的

    声明一个变量或一个常量时不指定数据类型,编译器自动推倒数据类型.也可以指定数据类型

    指定数据类型的方式为 在变量名后加 : 类型名

    var number: Int = 12   //整型

    var english: String = "abcdefg"  //字符串类型

    为了使数字表达更加易读和自然,数字表达格式黑能包含额外信息

    如:

    let number = 1_000_000

    在Swift中 不同类型的常量或者变量一般不能直接进行运算, 如果想要进行运算,需要进行显式类型转换,格式一般为 "类型名(常量/变量名)"

    let number1 = 78.5

    let number2 = 80

    var sum = number1 + Double(number2)

    字面量可以直接进行运算

    sum = 78.5 + 80

    二.元组

    元组是Swift语言提供的一种新的数据类型,是一种多个数值的组合,一个多元组可以是任意类型甚至是不同类型数值的组合

    var statusInfo = (404, "NotFound")

    等同于 var statusInfo:(Int, String) = (404, "NotFound")

    该多元组表示了一个整数和一个字符串的组合,当使用时可以从多元组中分解出每个分离的值

    使用下标来访问具体位置的元素

    println("statusInfoCode = (statusInfo.0), statusInfoMessage = (statusInfo.1)")

    可以为元组中的每一个独立项命名

    var statusInfo = (statusInfoCode: 404, statusInfoMessage:"NotFound")

    println("The statusMessage is (statusInfo.statusInfoMessage)")

    元组分解

    var (statusInfoCode, statusInfoMessage) = (404, "Not Found")

    println("stautsInfoCode:(statusInfoCode)")

    三.可选类型

    在 某个元素有值但是类型不确定,或没有任何值的时候使用

    let possibleNumber = "123"

    let convertedNumber: Int? =  possibleNumber .toInt()

    ?标识符指示改值是一个选项类型,意味着该类型值可以包含有效的整数值,也可能什么值也不包含

    由于toInt方法可能失败,因此编译器推断possibleNumber.toInt()返回的是一个optional Int类型。一个 optional Int 类型在语法上写作:Int?。选项类型的变量或常量指示该常量或变量允许没有值。

    可以使用if语句来判断一个选项是否包含了一个值.如果一个选项包含一个值,它被评估为true,否则评估为false.如果使用if语句评估一个选项包含了一个值,然后就能够在选项名字后面添加一个 ! 号来获取该选项的值.如果试图使用!来存取一个不存在的选项值会触发一个运行时错误,因此在使用!来存取选项值之前应该总是确保该选项值包含一个有效值,或者采用上面的方式进行判断

    如果要用可选类型中的值可以使用强制解析 !

    println("convertedNumber:(convertedNumber!)")

    可以为可选类型的变量设置为nil,表示没有任何值,(只有可选类型才能赋值为nil)

  • 相关阅读:
    如何得到需要下载文件的链接(路径)?
    Python之内存泄漏和内存溢出
    IO多路复用
    python-socket和进程线程协程(代码展示)
    Xshell(远程)连接不上linux服务器(防火墙介绍)
    Shell--变量
    Python读写配置文件模块--Configobj
    python文件处理之fileinput
    python之commands和subprocess入门介绍(可执行shell命令的模块)
    linux下 > /dev/null 2 > &1 的意思和如何在后台启动进程
  • 原文地址:https://www.cnblogs.com/NatureZhang/p/3819053.html
Copyright © 2011-2022 走看看