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

更新 發佈閱讀 3 分鐘

條件式可以說是程式重要的能力,也是判斷作業流程細心程度的地方。

條件式 (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 (人數符合規定) {人數剛好}

留言
avatar-img
Kate的沙龍
7會員
45內容數
和 Kotlin 相關的系列文章。 給程式初學者的「Kotlin 學習系列」 給正在實戰的工程師「Kotlin 實戰系列」
Kate的沙龍的其他內容
2023/03/22
比起說這是新技術,不如說是統一前端規格。 以前在不同框架下,類似功能的東西名字各不相同。比如輸入文字的物件,Android叫做EditText,iOS叫做UITextField,Html叫做TextBox或是input標籤。 這讓跨平台的開發者非常痛苦,痛不欲生。 而統一規格意味著,只要專心寫一套程
2023/03/22
比起說這是新技術,不如說是統一前端規格。 以前在不同框架下,類似功能的東西名字各不相同。比如輸入文字的物件,Android叫做EditText,iOS叫做UITextField,Html叫做TextBox或是input標籤。 這讓跨平台的開發者非常痛苦,痛不欲生。 而統一規格意味著,只要專心寫一套程
2021/11/23
去年停了近一年這裡的文章,其實是因為忙著將2020 iThome 鐵人賽的得獎作品——每年九月會舉辦的活動,連續三十天發表IT技術類文章——集結成書。 《老姐要用Kotlin寫專案:從 Server 到 Android APP 的開發生存日記》是以小說的敘事方式,將一對姐弟工程師合作
2021/11/23
去年停了近一年這裡的文章,其實是因為忙著將2020 iThome 鐵人賽的得獎作品——每年九月會舉辦的活動,連續三十天發表IT技術類文章——集結成書。 《老姐要用Kotlin寫專案:從 Server 到 Android APP 的開發生存日記》是以小說的敘事方式,將一對姐弟工程師合作
2021/11/22
此版本的目標畫面成果是: *金色名字。 *金色社交按鈕圖示,點擊按鈕另開對應的網頁或著顯示comming soon。 *名字和按鈕在網頁中央,如果網頁寬度不夠會換行,夠就不換行。
Thumbnail
2021/11/22
此版本的目標畫面成果是: *金色名字。 *金色社交按鈕圖示,點擊按鈕另開對應的網頁或著顯示comming soon。 *名字和按鈕在網頁中央,如果網頁寬度不夠會換行,夠就不換行。
Thumbnail
看更多
你可能也想看
Thumbnail
切記,每一次的上限,都是一個新的底線。 1. 保持循序漸進的步調 你需要從很前面開始,就讓他們覺得無法對你提出的論點說不。 從他們腦中的想法出發,那才是所謂的標準。 你需要從對方熟悉的地方開始,從那裡逐步進行。 你可以從大方向開始問起, 好比說「你想達成協議嗎」、「你想獲利嗎」、「請問你們信守承諾嗎
Thumbnail
切記,每一次的上限,都是一個新的底線。 1. 保持循序漸進的步調 你需要從很前面開始,就讓他們覺得無法對你提出的論點說不。 從他們腦中的想法出發,那才是所謂的標準。 你需要從對方熟悉的地方開始,從那裡逐步進行。 你可以從大方向開始問起, 好比說「你想達成協議嗎」、「你想獲利嗎」、「請問你們信守承諾嗎
Thumbnail
「如果老闆要的東西是錯的怎麼辦?」這是我在教學時經常被問的問題。 因此在需求訪談的工作坊中,我設計了一個角色扮演的情境劇,讓同學體驗為什麼決策者總是對於「執行者認為正確的要求」無動於衷。 ​ 最有趣的事情是,我都是現場指定一位同學擔任決策者,然後當著所有人的面告訴扮演決策者的同學,目前他的目標以及處
Thumbnail
「如果老闆要的東西是錯的怎麼辦?」這是我在教學時經常被問的問題。 因此在需求訪談的工作坊中,我設計了一個角色扮演的情境劇,讓同學體驗為什麼決策者總是對於「執行者認為正確的要求」無動於衷。 ​ 最有趣的事情是,我都是現場指定一位同學擔任決策者,然後當著所有人的面告訴扮演決策者的同學,目前他的目標以及處
Thumbnail
(Day 29) 2022 6/14 充份條件、必要條件除了從語言敍述中去判斷外,也可以由集合的文氏圖(Venn's diagram以視覺方式去理解,那就下次再說囉。
Thumbnail
(Day 29) 2022 6/14 充份條件、必要條件除了從語言敍述中去判斷外,也可以由集合的文氏圖(Venn's diagram以視覺方式去理解,那就下次再說囉。
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
生活中睜開眼的第一剎那就要面臨各種選擇,建立一個準則越來越靠近我們真正想要的生活與工作。 透過原則找到幫助我們做決定!
Thumbnail
生活中睜開眼的第一剎那就要面臨各種選擇,建立一個準則越來越靠近我們真正想要的生活與工作。 透過原則找到幫助我們做決定!
Thumbnail
各位職場新兵或老鳥,一定遇過老闆說:有關公司的建議,只要是「合理」的都會採納作為改進...。只是如何界定「合理」?還是老闆說了算。 合理、合理,多少的惡假汝之名! 日前開會時,聽到高層會中發表論點,很弔詭! 員工請補休盡量避免,應該自我奉獻,不能影響工作? 基層有意見時,要循正常管道,不該爆料*
Thumbnail
各位職場新兵或老鳥,一定遇過老闆說:有關公司的建議,只要是「合理」的都會採納作為改進...。只是如何界定「合理」?還是老闆說了算。 合理、合理,多少的惡假汝之名! 日前開會時,聽到高層會中發表論點,很弔詭! 員工請補休盡量避免,應該自我奉獻,不能影響工作? 基層有意見時,要循正常管道,不該爆料*
Thumbnail
情境 老闆:我們要盡量滿足客戶需求。 業務:瞭解,開始給客戶一些彈性,滿足一些特殊要求。 老闆:業務不能對於客戶的要求照單全收。 業務:!? 業務:瞭解,開始變得一板一眼,結果某天有個客戶不爽。 老闆:我們要盡量滿足客戶需求。 業務:!!!? 都給你說就好啦!!!! 翻桌。 冷靜! 這樣的狀況,我
Thumbnail
情境 老闆:我們要盡量滿足客戶需求。 業務:瞭解,開始給客戶一些彈性,滿足一些特殊要求。 老闆:業務不能對於客戶的要求照單全收。 業務:!? 業務:瞭解,開始變得一板一眼,結果某天有個客戶不爽。 老闆:我們要盡量滿足客戶需求。 業務:!!!? 都給你說就好啦!!!! 翻桌。 冷靜! 這樣的狀況,我
Thumbnail
在AI浪潮下,009819 中信美國數據中心及電力ETF 直接卡位算力與電力雙主軸,等於掌握AI最核心基建。2008從 Apple Inc. 與 iPhone 帶動供應鏈,到如今AI崛起,主線已由應用端轉向底層。AI發展離不開算力與電力支撐,009819的價值,在於押中「沒有它不行」的核心資產。
Thumbnail
在AI浪潮下,009819 中信美國數據中心及電力ETF 直接卡位算力與電力雙主軸,等於掌握AI最核心基建。2008從 Apple Inc. 與 iPhone 帶動供應鏈,到如今AI崛起,主線已由應用端轉向底層。AI發展離不開算力與電力支撐,009819的價值,在於押中「沒有它不行」的核心資產。
Thumbnail
我當過4年志願役,來回答你的問題。
Thumbnail
我當過4年志願役,來回答你的問題。
Thumbnail
5 月將於臺北表演藝術中心映演的「2026 北藝嚴選」《海妲・蓋柏樂》,由臺灣劇團「晃晃跨幅町」製作,本文將以從舞台符號、聲音與表演調度切入,討論海妲・蓋柏樂在父權社會結構下的困境,並結合榮格心理學與馮.法蘭茲對「阿尼姆斯」與「永恆少年」原型的分析,理解女人何以走向精神性的操控、毀滅與死亡。
Thumbnail
5 月將於臺北表演藝術中心映演的「2026 北藝嚴選」《海妲・蓋柏樂》,由臺灣劇團「晃晃跨幅町」製作,本文將以從舞台符號、聲音與表演調度切入,討論海妲・蓋柏樂在父權社會結構下的困境,並結合榮格心理學與馮.法蘭茲對「阿尼姆斯」與「永恆少年」原型的分析,理解女人何以走向精神性的操控、毀滅與死亡。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
「を」就是「他動詞」,自願做的時候使用。 對於日本人來說,是否有自己的意志是非常重要的。 問題的關鍵不在於 "發生的事實",而在於 "是否有責任"。 理解了這個概念,也就更容易理解自動詞和他動詞了。
Thumbnail
「を」就是「他動詞」,自願做的時候使用。 對於日本人來說,是否有自己的意志是非常重要的。 問題的關鍵不在於 "發生的事實",而在於 "是否有責任"。 理解了這個概念,也就更容易理解自動詞和他動詞了。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News