[Day07] swift & kotlin 入门篇!(5) 基础语法-集合物件

集合物件

集合物件代表 "一个放置一堆东西的地方"
它可以是有序 有可以是无序的
甚至可以是唯一无重复资料的
在各种程序语言中都有集合物件的存在
让我们看看他们怎麽使用吧

swift

// Array
var users = ["ami1", "ami2", "ami3"]
users[1] = "ami2 is good" // 可修改内容
print(users) // 输出:["ami1", "ami2 is good", "ami3"]
//users[3] = "ami4" // 编译错误  Array 长度固定  index 3 超出边际 
users.append("ami3") // 可以用 append扩充长度
print(users) // 输出:["ami1", "ami2 is good", "ami3", "ami3"]
print(users.count) // 输出:4

// Set
var ids: Set<String> = ["ami1", "ami2", "ami3"]
// ids[1] = "ami2 is good" // 编译错误 Set 没有用index修改资料的概念
print(ids)  // 输出:["ami3", "ami1", "ami2"  Set 也没有位置的概念喔
ids.insert("ami3")
print(ids) // 输出:["ami1", "ami2", "ami3"] SET 的值是不会重复的
print(ids.count) // 输出:3

// Map
var usersMap = ["user1": "ami1","user2":  "ami2", "user3": "ami3"]
usersMap["user2"] = "new ami22"
usersMap["user4"] = "new ami4"
print(usersMap) 
// 输出:["user1": "ami1", "user2": "new ami22", "user3": "ami3", "user4": "new ami4"], 内容可变 长度可变
print(usersMap.count) // 输出:3

Array 是有序的 可重复的
Set 是无序 值唯一的
Map 是无序 有索引的

kotlin

fun main() {
    // List
    var users = mutableListOf("ami1", "ami2", "ami3") // 可变List
    users[1] = "ami2 is good" // 可修改内容
    println(users) // 输出:[ami1, ami2 is good, ami3]
    //users[3] = "ami4" // 编译错误  Array 长度固定  index 3 超出边际 
    users.add("ami3") // 可以用 add扩充长度
    println(users) // 输出:[ami1, ami2 is good, ami3, ami3]
    println(users.size) // 输出:4
    
    // Set
    var ids = mutableSetOf("ami1", "ami2", "ami3")
    // ids[1] = "ami2 is good" // 编译错误 Set 没有用index修改资料的概念
    println(ids)  // 输出:["ami3", "ami1", "ami2"  Set 也没有位置的概念喔
    ids.add("ami3")
    println(ids) // 输出:["ami1", "ami2", "ami3"] SET 的值是不会重复的
    println(ids.size) // 输出:3
    
    // Map
    var usersMap = mutableMapOf("user1" to "ami1","user2" to "ami2", "user3" to "ami3")
    usersMap["user2"] = "new ami22"
    usersMap["user4"] = "new ami4"
    println(usersMap) 
    // 输出:{user1=ami1, user2=new ami22, user3=ami3, user4=new ami4}, 内容长度都可变
    println(usersMap.size) // 输出:4
}

集合物件在swift与kotlin间无特别明显的差异
概念与使用上几乎都相同
其中kotlin的List
还有一个 listOf, 如果你的List是不想被变动的。
可以使用。

另外还有 Array, ArrayList
主要是想限制整个资料是 "同一个型别" 时使用
kotlin在Java上做加强
所以对於 Array, List 多了很多操作

有需要用到时再来查文件即可

小碎嘴时间 ヽ(゚´Д`)ノ゚

前几天跟身边的前端工程师聊天时
才有人说~写几年程序了
我还是分不清楚Array 跟 Object的差别
然後就有人说 简单啊~
一个是[] 一个是{}

怎麽不会分 ʕ•̀ω•́ʔ✧ ~
然後就有人说
typeof [] === typeof {} 你不知道吗
分不清楚的~

这什麽工程师聊天
(╯‵□′)╯︵┴─┴

吃饭时间聊程序?
(╯‵□′)╯︵┴─┴︵┴─┴

把我的吃饭心情还来~~~~~~
(╯‵□′)╯︵┴─┴ ︵┴─┴ ︵┴─┴ ︵┴─┴


<<:  Day15:[搜寻演算法]Linear Search - 线性搜寻法

>>:  Day 10:Python基本介绍03 | List、Tuple

[Day 4] -『 GO语言学习笔记』- GO语言架构介绍

如本日主题,今天要来介绍一下Go语言的程序码架构,以下内容摘录自『 The Go Workshop ...

Day 28 - 从大学肄业,联成电脑,到 Microsoft MVP 得奖,从零开始的软件工程师

前言 各位 iThome 的观众朋友们大家好,我是 Che-Chia。感谢大家点进来,阅读这篇文章。...

[影片]第28天:英雄指南-5. 新增应用内导航(3)

GitHub:https://github.com/dannypc1628/Angular-Tou...

day28 等一下啦,会坏掉的/// Coroutine并发操作的重复请求

没有要开车,参赛规定有写不能污言秽语,等我有空再去其他平台写个开车系列的coroutine 这里给个...

【day11】争厚厚切牛排

位於南港车站附近的争厚厚切牛排 也是我们常去的口袋名单之一 平日营业时间是两段式的 但像今天周日的话...