swift4.1 系统学习三

简介: //// main.swift// swift03//// Created by iOS on 2018/9/21.// Copyright © 2018年 weiman. All rights reserved.//import Foundation/* swift学习笔记4 */// 1.元组/* 元组是swift中一种复合类型。
//
//  main.swift
//  swift03
//
//  Created by iOS on 2018/9/21.
//  Copyright © 2018年 weiman. All rights reserved.
//

import Foundation

/*
 swift学习笔记4
 */

// 1.元组
/*
 元组是swift中一种复合类型。它很强大哦,可以吧任意类型的有限个对象整理为一个对象。
 */

do {
    let a = 10
    let b = "小花"
    let tuple = (a,b)
    print(tuple)
    print(tuple.0)
}

// 注意:如果我们要表示一个元组,那么圆括号中至少要有两个元素,否则,圆括号被看做是圆括号操作符。

//1》访问元组中的元素
//要访问元组的对象,可以使用成员访问操作符.,后面跟上元素的索引位置。
do {
    let tuple = ("小明","男",8,"北京")
    print(tuple.0) //输出 “小明”
    let sex = tuple.1
    print(sex)
}

//我们还可以给元组指定标签进行访问
do {
    let tuple = (name: "老王", age: 78, address: "上海市")
    print(tuple.name)
    print(tuple.age)
    print(tuple.address)
}

//2》元组分解
do {
    let tuple = (10, 20.6, true)
    let (i, d, b) = tuple
    print("i = \(i)")
    print("d = \(d)")
    print("b = \(b)")
    
    // 提取部分值
    let (x, _, y) = tuple
    print("x = \(x)")
    print("y = \(y)")
    
    // 交换两个对象的值
    var w = 1, n = 2
    (w, n) = (n, w)
    print("w:\(w), n:\(n)")
}
//注意: 上面声明的(i, d, b)并不是元组,而是三个常量,用于萃取元组中的元素。

//3》元组比较
//两个相同元素类型的元组,如果每个元素都遵循了Equatable协议,那么这两个元组对象可以用==或者!=操作符来比较是否相等。
/*
 元组相等: 如果元组的每一个元素的值都是相等的,那么这两个元组相等。
 */

do {
    var a = 10
    let result: Void = a += 100
    print("result: \(result), a: \(a)")
    //result: (), a: 110
    let obj: Any = result
    let isVoid = obj is Void
    print("obj:\(obj), isVoid:\(isVoid)")
    //obj:(), isVoid:true
    
}

//4》 元组计算顺序
do {
    var loop = 3
    repeat {
        print("Hello,world")
        print("loop: \(loop)")
    } while(loop -= 1, loop).1 > 0
    /*
     Hello,world
     loop: 3
     Hello,world
     loop: 2
     Hello,world
     loop: 1
     */
    
    //元组的计算顺序是从左到右进行计算的,从第一个元素到最后一个元素。
    
}


目录
相关文章
|
Swift iOS开发
Swift:暗黑模式iOS 13以上支持是否跟随系统和iOS13以下的主题适配
Swift:暗黑模式iOS 13以上支持是否跟随系统和iOS13以下的主题适配
1276 0
Swift:暗黑模式iOS 13以上支持是否跟随系统和iOS13以下的主题适配
|
Swift
Swift中获取系统语言
//en-US zh-HK zh-TW zh-Hans-US var lng:String { let userDefault = NSUserDefaults.
947 0
|
Swift
swift4.1 系统学习七
import Foundation //swift学习笔记07 /* 控制流语句 学过任何一种语言的小伙伴们都对控制流语句不陌生,几乎每一天都在用。 控制流分类: 1.分支 2.循环 */ /* do语句块 这个语句块在我之前的学习中一直在使用,是一种在学习中很方便的写代码的方式。
992 0
|
Swift 机器学习/深度学习 C语言
swift4.1 系统学习八
// // main.swift // swift08 // // Created by iOS on 2018/9/28. // Copyright © 2018年 weiman. All rights reserved. // import Foundation //swift学习笔记8 /* 1. for-in 循环 swift中使用for-in循环还是很频繁的。
870 0
|
索引 Swift 自然语言处理
swift4.1 系统学习六
swift学习笔记6 字符和字符串 在swift中,String类型也是结构体,属于值类型,而不是引用类型。这一点,与OC是不一样的。 // // main.
819 0
|
存储 Swift iOS开发
swift4.1 系统学习四
// // main.swift // swift04 // // Created by iOS on 2018/9/21. // Copyright © 2018年 weiman.
1041 0
|
Swift iOS开发 MacOS
swift4.1 系统学习一
/* swift学习笔记1 简介 swift出现的目的:为了简化macOS和iOS开发 特点: 1.开源 2.跨平台 3.面向对象的编程语言 4.编程范式丰富:面向过程,面向对象,函数式编程 5.安全性 */ /* swift学习笔记2 基本类型体系 1.枚举(enum) 2.结构体(struct) 3.类(class) 4.协议(protocol) 5.函数(function) 6.复合类型:元组(tuple) 注意:这里并没有像别的语言那样,把基本数据类型和用户自定义数据类型分类。
1049 0
|
安全
Swift今夏挫败3起网络攻击 否认系统被入侵
本文讲的是Swift今夏挫败3起网络攻击 否认系统被入侵,Swift首席执行官 Gottfried Leibbrandt,在本周一日内瓦召开的银行业论坛上表示,今年夏天,银行防御了三次利用Swift金融转账网络的企图。
1159 0