zoukankan      html  css  js  c++  java
  • 【Swift学习】Swift编程之旅(三)

      元组(tuples)

      tuples是将多个单一的值组合为一个复合的值。它可以包含任何类型的值,而不需要都是相同类型。

      一.元组的创建

    1。

    let http404error = (404,"NOT FOUND!")
    let (statusCode, statusMessage) = http404error
    print("The status code is (statusCode),the status message is (statusMessage)")

    2.

    let httpError = (statusCode:404,statusMessage:"Not Found!")

    输出结果

      二.元组数据的访问

    1.statusCode,statusMessage就像字典中的key一样,我们可以通过它们来访问元祖的元素。

    2.还可以使用下标来访问

      三.元组元素的忽略

    有时候并不是需要所有的元素,我们可以通过_下划线来忽略不需要的元素

    let http404error = (404,"NOT FOUND!")
    let (statusCode, _) = http404error
    print("The status code is (statusCode)")

    作为函数返回值时,元组非常有用。一个用来获取网页的函数可能会返回一个(Int, String)元组来来描述是否获取成功。和只能返回一个类型的值比较起来,一个包含两个不同类型值的元组可以让函数的返回信息更有用。

      可选(Optional)

    使用可选optional来处理一些值缺失的情况。

    There is a value, and it equals x有一个等于X的值
    or或者

    There isn’t a value at all没有值

    注意:

      在C 和 Objective-C 语言中并没有可选这个概念。最接近的 Objective-C 特征是,一个方法要不返回一个对象要不返回nil,nil表示“缺少一个有效的对象”。然而,这只对对象起作用——对于结构体,基本的 C 类型或者枚举类型并不起作用。对于这些类型,Objective-C 方法一般会返回一个特殊值(比如NSNotFound)来暗示值缺失,Swift 的可选可以让你暗示任意类型的值缺失。

    如果一个类型可选那么就在类型后加?即表示可选如Int?

    下面我们通过一个简单的例子来学习一下可选

    let possibleNumber = "12345"
    let number = Int(possibleNumber)
    print(number)

    输出结果

    let possibleNumber = "Hello,how are you?"
    let number = Int(possibleNumber)
    print(number)

    输出结果

    你将一个毫无价值的可选变量设置为nil

    if 语句以及强制解析

    你可以使用if语句来判断一个可选是否包含值。如果可选有值,结果是true;如果没有值,结果是false。

    当你确定可选包确实含值之后,你可以在可选的名字后面加一个感叹号(!)来获取值。这个感叹号表示“我知道这个可选有值,请使用它。”这被称为可选值的强制解析(forced unwrapping):

      

  • 相关阅读:
    【洛谷P1962】斐波那契数列
    【洛谷P3390】【模板】矩阵快速幂
    【洛谷P3070】[USACO13JAN]岛游记Island Travels
    【NOIp模拟赛】antipalindrome
    【洛谷P3930】SAC E#1
    【洛谷P3928】SAC E#1
    【洛谷P3927】SAC E#1
    【NOIp模拟赛】binary
    【NOIp模拟赛】value
    【洛谷P2341】[HAOI2006]受欢迎的牛
  • 原文地址:https://www.cnblogs.com/salam/p/5371788.html
Copyright © 2011-2022 走看看