學習 Kotlin 系列:條件式 你是誰的人

閱讀時間約 2 分鐘
條件式可以說是程式重要的能力,也是判斷作業流程細心程度的地方。
條件式 (Condition) ,顧名思義,只有符合條件才做事
身為一個好士兵,就要執行自家長官的命令。如果是來自敵方隊伍、屬下、路人的命令,就可以快樂的無視他們。
關鍵程式碼大概就會是這樣:
if (發令者 == 自家長官) {執行命令} else {無視}
緊跟著 if 的括號裡的內容就是執行命令的條件, else 就是表示除此之外的其它情形,所以也就不用另外描述的括號了。
== 在 Kotlin 裡就是請程式判斷雙方是否等價,判斷不等則是 != ,判斷大小的符號和小學數學課的一樣,就不多解釋: > 、 >= 、 < 、 <= 。
而更深刻的比對是否同一對象,就再多一個等號, === 和 !== 。就像你錢包裡的五元和我錢包裡的五元雖然是等價的,但其實不是同一枚五元硬幣。
我們要注意的就是,有哪些條件要獨立出來,條件成真時又要做些什麼事。
當有多個條件並行時,可以用 else if ,程式會依序判斷,當不滿足 if 時,才去看 else if 的條件。
if (發令者 == 自家長官) {執行命令}
else if (發令者 == 敵方隊伍) {無間道}
else if (發令者 == 可愛的屬下) {調教}
else {無視}
因為是用同一變數去做比對,有更簡便的寫法:
when (發令者){
自家長官 -> {執行命令}
敵方隊伍 -> {無間道}
可愛的屬下 -> {調教}
else - > {無視}
}
比較複雜的條件,就要用上高中數學課的邏輯, && 就是交集條件,|| 就是聯集條件。不喜歡數學的人也沒問題,就想成前者是我都要,後者是有就好。
比如說指揮官希望部隊人數在 20 人以上 30 人以下,可以用:
if (人數 >= 20 && 人數 <= 30) {人數剛好}
或是用更簡便的範圍 (Range) 描述 「介於」這個概念。
if (人數 in 20..30) {人數剛好}
如果同一個條件要在多處引用,也可以選擇儲存判斷後的結果,放在 Boolean 這個變數型態。
val 人數符合規定 : Boolean = 人數 in 20..30
if (人數符合規定) {人數剛好}
6會員
45內容數
和 Kotlin 相關的系列文章。 給程式初學者的「Kotlin 學習系列」 給正在實戰的工程師「Kotlin 實戰系列」
留言0
查看全部
發表第一個留言支持創作者!
你可能也想看
【學習Nick Milo微論文的3個重要啟發】無論你是內容創作者、學生還是專業工作者, 微論文都能幫助你提升寫作技能,精練思想。 微論文強調從經驗、意見和事件三方面入手, 使文章更具深度和多樣性。 在這篇文章中, 我將分享三個關於微論文的重要啟發, 幫助你更好地運用這種寫作方式。 ▋啟發1 - 深入理解
avatar
王啟樺
2024-06-18
學習悖論,女朋友悖論;關於寬柏不知道要去哪裡找女朋友的問題。有一個東西叫「學習悖論」,是柏拉圖的美諾篇說的, 大意是這樣: 人沒辦法學習。 首先,一個人不能研究他知道的東西, 因為他已經知道了,無須再研究; 但是,他也不能研究他不知道的東西, 因為,他不知道他要研究的是什麼。 聽起來好像很詭異。 但是,先不要管裡面可能的邏輯、或歧義問
avatar
rubo
2024-06-17
【學習新東西的樂趣:每日300字啟發的力量】── 1. 透過閱讀擴展視野 2. 得到APP的利用 3. 每日分享的價值每當我學習新東西,總是感到無比的興奮。相較於買車出遊,我更喜歡透過摸索新事物來擴展自己的眼界。 ▋透過閱讀擴展視野 我主要透過購買書籍來進行探索,這也多虧父母從小到大提供的經濟支持。從幼稚園到博士畢業,我大概購買了四五千冊的書籍。父親甚至在我的房間外搭了一個鐵皮屋,專門用來存放我各式各樣
avatar
王啟樺
2024-06-12
學習前,學習後 @十年前,非常羨慕網路遊戲中,畫得美輪美奐的插畫,諸如龍,騎士,獅鷲怪物等等的電腦繪圖插畫。剛開始自己存錢買一塊日本的電腦繪圖板,想看youtube的電腦繪圖教學來畫,結果就畫成下面左邊那幅很好笑的德行(疑似幼稚園塗鴉)。 @後來有一次陪朋友去巨匠電腦報名,莫名其妙被櫃台小姐鼓動,用每期兩千元
Thumbnail
avatar
張旭淵
2024-06-11
如何學習 Kotlin 程式語言本課程介紹如何學習 Kotlin 程式語言,KT 老師專門開設了一門從零開始學 Kotlin 程式設計的課程,非常適合對此有興趣的初學者。
avatar
HKT實驗室
2023-12-29
Notion Like 笔记软件使用教程·学习资源汇总·知识管理方案:深度评测、辅助工具、信息管理、时间管理、任务管理、思维管理、项目管理、文件管理、笔记方法、记忆方法、写作方法关于 Notion 的使用教程,在 Notion 相关社区已经有不少精品内容。这篇文章中,无意于探讨过于高级的技术,而是为准备使用 Notion 以及 相关的 FlowUs 用户提供一个详实、全面的使用教程。 本文会不定期更新。 数字花园:Notion 优质资源汇总) 使用反思 辅助工具·软件联动
Thumbnail
avatar
Spike Spiegel
2022-05-28
双链笔记软件 Roam Research 综合评测以及学习资源/使用教程分享Roam Research 是最近几年,除了 Notion 以外,被广大笔记用户最为关注的产品。关于 Roam, 很多读者已经了解颇多。因此,对于 Roam 我只做简要评价,重点在于分享 Roam 使用所需要的学习资源和使用教程。 介绍 双链笔记赛道的开创者。 优点 📷 缺点 评价 免费使用
Thumbnail
avatar
Spike Spiegel
2022-05-28
【學習客觀也是對自己的一份溫柔】 〈你的生命裏,有沒有一把持續性的小火?〉20211104舊文 前陣子在《百病起於寒》一書中,看到很有意思的一段敘述,讓我聯想到,人生這條路,如果想走的又穩健又長遠,那這種「懂得用持續性小火去溫暖自己」的概念,是相當重要的。 書中摘要如下(p132): 而當人的能量越來越趨盈滿,就能感知到自己人生的下一步該做些什麼,這是很自然的。 **
Thumbnail
avatar
鍾嘉誼
2022-04-20
學習目的是實踐,是一個自我增值的過程,能應用在生活上的學習才是真的學到,來賓:科學日常實驗創作者-阿駿日常贏了升學制度卻失去了創造能力 臺灣的代工業很強,有很大一部分是源自於升學考試制度。因為在升學考試的制度之下,我們養成喜歡正確的答案,不需要思考,只講求效率和速度完成目標,為了達成所謂的“良率”慢慢地失去思考的過程,不再擁有個人的想法和觀點 自學的能力等於未來的競爭力
Thumbnail
avatar
珊迪兔
2022-03-08
學習必經5階段,你是盲目學習,還是有意識的學習?別用戰術上的勤奮,掩蓋戰略上的愚蠢,這裡的戰術指的是方法,戰略指的是心態,在方法開始之前,你必須先把你的學習心態調整好,心態對了,方法對了,學習效益才會逐漸成長,因此在這我必須先告訴你3個,學習經常會犯下的迷思 迷思1學習就是輸入再輸,學習並非只有輸入再輸出,如果少了思考,那麼會陷入,盲目學習。
Thumbnail
avatar
jimmy
2021-08-22