Day 3:Kotlin 程序设计基础入门 (2)

本篇文章同步发表在 HKT 线上教室 部落格,线上影音教学课程已上架至 UdemyYoutube 频道。另外,想追踪更多相关技术资讯,欢迎到 脸书粉丝专页 按赞追踪喔~

今天要跟大家介绍 Kotlin 语法的内容大纲:

  • if 和 when 条件控制介绍
  • List、Map 和 Set 集合资料介绍
  • for 和 while回圈,循环控制介绍
  • 跳转语句: break、continur、return
  • 范围循环操作:Range
  • 函数

if 条件控制

when 条件控制

List、Map、Set 集合

Java 集合有 List、Map、Set。Kotlin 也有 List、Map、Set,但 Kotlin 中的 List、Map、Set 只能读取,是无法进行修改,若需要可读可写,需使用 MutableList、MutableMap、MutableSet。

集合的方法:

  • add 新增元素
  • remove 移除元素
  • size 集合内元素的数量
  • clear 清除所有集合内的元素

List

List 集合特性:按照顺序排列,可以放重覆的物件

Koltin 程序码

在 Kotlin 中的 List 只能一开始初始资料和事後读取该集合中的元素,之後不能进行增、删、修。

//宣告一个 List 集合,并初始化资料,kotlin 会根据资料,自动推断,资料型别
 var lists = listOf(666,777,888)
 
 //取出索引值为1的资料
 println(lists[1])

若需要事後可以修改,需使用 MutableList 集合操作新增、移除、读取、全部删除资料:

//宣告一个 MutableList 资料型态为整数的集合变数
var mutableList: MutableList<Int>  = mutableListOf()

//新增资料
mutableList.add(666)
mutableList.add(777)
mutableList.add(888)
println(mutableList)

//获取索引第二笔资料
mutableList[2]
println(mutableList[2])

//移除资料为 666 的资料(需要注意的是这里跟 Java 不同,此处移除不是根据索引笔数)
mutableList.remove(666)
println(mutableList)

//根据索引笔数删除方式
mutableList.remove(mutableList[1])
println(mutableList)

//删除全部 mutableList 内的资料
mutableList.clear()
println(mutableList)

Map

Map 集合特性: 采 key、value 方式存放,key 唯一不能重覆。

Koltin 程序码

在 Kotlin 中的 Map 只能一开始初始资料和事後读取元素,之後不能进行增、删、修。

val map = mapOf("1" to 666, "2" to 777)
println(map)

若需要事後可以修改,需使用 MutableMap 集合操作新增、移除、读取、全部删除资料:

var mutableMap: MutableMap<String, Int> = mutableMapOf()
//新增资料
mutableMap.put("1", 666)
mutableMap.put("2", 777)
mutableMap.put("3", 888)
println(mutableMap)

//移除资料
mutableMap.remove("1")
println(mutableMap)

//获取资料
mutableMap.get("2")
println(mutableMap.get("2"))

//删除所有资料
mutableMap.clear()
println(mutableMap)

Set

Set 集合特性:没有特定顺序,且没有重覆的物件

Koltin 程序码

在 Kotlin 中的 Set 只能一开始初始资料和事後读取元素,之後不能进行增、删、修。

var set = setOf(666,777,888)
println(set)

在 Kotlin 中,使用 MutableSet 集合操作新增、移除、读取、全部删除资料:

var mutableSet: MutableSet<Int> = mutableSetOf()

//新增资料
mutableSet.add(666)
mutableSet.add(777)
mutableSet.add(888)
println(mutableSet)

//移除资料
mutableSet.remove(666)
println(mutableSet)

//判断元素,是否包含在 Set 集合内
println(mutableSet.contains(666))

//清除所有资料
mutableSet.clear()
println(mutableSet)

for 回圈,循环控制

// 宣告一个 listOf 集合
val course_titles = listOf("python", "java", "kotlin")

println(course_titles)// [python, java, kotlin]

//for 回圈,取出每个值
for (title in course_titles) {
    println(title)
}

while 回圈,循环控制

var x = 60

while (x > 0) {
    println(x--)
}

跳转语句: break、continur、return

范围循环操作:Range

基本函数定义

带有参数的函数定义

函数有回传值定义

函数有默认参数值定义

命名参数的方式来呼叫函数

单行表达式函数

参考资料

HKT 线上教室
https://tw-hkt.blogspot.com/

Freepik
https://www.freepik.com/

Kotlin docs
https://kotlinlang.org/docs/home.html


那今天【iThome 铁人赛】就介绍到这边罗~

顺带一提,KT 线上教室,脸书粉丝团,会不定期发布相关资讯,不想错过最新资讯,不要忘记来按赞,追踪喔!也欢迎大家将这篇文章分享给更多人喔。

我们明天再见罗!!!掰掰~


<<:  [重构倒数第28天] - 关於拆分 Components 的学问

>>:  Day 03 Azure Virtual Machine- Windows 使用者的救星

现况访谈与差异分析

现况访谈 旨在确认资安目标与导入范围 差异分析 在现况谈访中依据 ISMS 内建的 114 个控制项...

[2021铁人赛 Day09] General Skills 06

引言 昨天的题目让大家知道可以做反组译这件事, 其实这是一个大主题,归在逆向工程中, 该分类会大量...

day 22 - NSQ Consumer & graceful shutdown

一个服务发出讯息之後, 可以由多个服务分别注册多个channel来监听, 同一个TOPIC底下的每个...

【Git】 发 PR 是什麽?

第一次遇到发PR,原来就是档案修改後,发通知请原作来拉回去(Pull)的请求(Request) 1....

4.移转 Aras PLM大小事-Agile 汇出 Part & BOM (2)

第4话 Agile 汇出 Part & BOM (2) 本篇讲解如何汇出BOM表 主料BOM...