Dictionary 使用array创建与字典取值

缘由:

在职训时老师讲解语法,讲到Dictionary(字典)时,有一种老师说的我都懂,看起来没什麽问题,但好像又不是真的懂
其实作为现职的app工程师到现在也还是会遇到脑筋打结的时候,资料类型没啥问题但常常问题在於到底有几层中括号,每次遇到这个我都要想超久,没什麽特别有效率的方法就不写下来了,假如有大神有很棒的方法请教教我,本篇单就取出字典内的值与字典的相关使用来介绍。
这次遇到的问题是需要将两笔不一样的阵列资料拼在一起後,然後再比对显示资料,脑内风暴了一下後,查找了字典的各种用法,刚好有合用的,所以记录下来

解决方法:

以下就用我举的范例来说明这次要纪录的方法,numberItems阵列为学生号码阵列,scores阵列为学生成绩阵列,要从这两个阵列中得出平均和不及格的学生座号与成绩

创建座号阵列

let numberItems = Array(1..<6).map{ "座号\($0)"}

学生成绩阵列

let scores = [84,73,55,87,96]

用阵列创建[座号,成绩]字典:

let scoreDic = Dictionary(uniqueKeysWithValues: zip(numberItems, scores))

创建平均变数

var average = 0.0

遍历[座号,成绩]字典

for (number,score) in scoreDic {
    if score <= 60 {
        print("\(number)成绩不及格,这次成绩为\(score)")
    }
    else {
        if score >= 90 {
            print("\(number)非常优秀,这次成绩为\(score)")
        }
        else {
            print("\(number)成绩及格,这次成绩为\(score)")
        }
    }
    average = average + Double(score)
}
average = average/Double(scoreDic.count)
print("平均等於 :\(average)")

<<:  [Day11] 策略最佳化模组改造(1)

>>:  [Day-11] R语言 - K - mode 实作 ( K - mode in R.Studio)

[DAY 27] _看门狗简介_视窗看门狗(1)

STM看门狗有两种,昨天讲完其中一种,今天来看看WWDG(window watchdog) 这也是在...

Day13 - 解决状态大爆炸 - 1: Parallel States (平行式状态)

以昨天的例子而言,我们的 input 有 [Invalid / Valid]、[Disabled /...

[13th][Day8] Pointer

Pointer 到底是个什麽东东呢?指标?指引?位址?指针? 目前为止提到的变数都很单纯 int f...

Day28 - Java常见面试考题

过去我面试了不少公司的软件工程师职位,涵盖前端、後端,所以今天以Java相关职缺中常考的面试考题作为...

Day06 捷径的工具箱-App

Hello 大家, 不知不觉来到连假的最後一天了, 要开始收心罗~ 是不是有一些朋友又请了三天特休来...