kotlin學習筆記(3) 條件控制和迴圈控制

2021-09-24 15:41:59 字數 2019 閱讀 2586

乙個 if 語句包含乙個布林表示式和一條或多條語句

//傳統用法

var max = a

if (ab)else

//作為表示式

val max = if(a>b) a else b

例項:fun main(args: array) else if(x==0)else

var a = 1

var b = 2

val c = if (a>=b) a else b

println("c 的值為 $c")

}輸出結果:x 等於 0 ;c 的值為 2

使用區間:

使用 in 運算子來檢測某個數字是否在指定區間內,區間格式為 x..y :

fun main(args: array)

}

when 將它的引數和所有的分支條件順序比較,直到某個分支滿足條件。

when 既可以被當做表示式使用也可以被當做語句使用。如果它被當做表示式,符合條件的分支的值就是整個表示式的值,如果當做語句使用, 則忽略個別分支的值。

for 迴圈可以對任何提供迭代器(iterator)的物件進行遍歷

for (item:int in ints)

for迴圈也可以通過下標遍歷物件

for (i in array.indices)

do…while 迴圈 對於 while 語句而言,如果不滿足條件,則不能進入迴圈。但有時候我們需要即使不滿足條件,也至少執行一次。

do…while 迴圈和 while 迴圈相似,不同的是,do…while 迴圈至少會執行一次。

例項:fun main(args: array)

println("----do...while 使用-----")

var y = 5

do while(y>0)

}輸出結果:54

321----do...while 使用-----54

321

kotlin 有三種結構化跳轉表示式:

例項:

fun main(args: array)

}輸出:

1 2 4 5 6

break 和 continue 標籤

在 kotlin 中任何表示式都可以用標籤(label)來標記。 標籤的格式為識別符號後跟 @ 符號,例如:abc@、foobar@都是有效的標籤。 要為乙個表示式加標籤,我們只要在其前加標籤即可。

//用標籤限制 break 或者continue:

loop@ for (i in 1..100)

}kotlin 有函式字面量、區域性函式和物件表示式。因此 kotlin 的函式可以被巢狀。 標籤限制的 return 允許我們從外層函式返回。 最重要的乙個用途就是從 lambda 表示式中返回。回想一下我們這麼寫的時候:

fun foo()

}這個 return 表示式從最直接包圍它的函式即 foo 中返回。 (注意,這種非區域性的返回只支援傳給內聯函式的 lambda 表示式。) 如果我們需要從 lambda 表示式中返回,我們必須給它加標籤並用以限制 return。

fun foo()

}現在,它只會從 lambda 表示式中返回。通常情況下使用隱式標籤更方便。 該標籤與接受該 lambda 的函式同名。

fun foo()

}例項:

fun main(args: array) '是第$句第$個字")

break@outside;

}j++;

}i++;}}

一般用於容器的遍歷

例項://迭代器迴圈

var iterator= goodsmutmap.iterator();

while(iterator.hasnext())名稱:$\n")

}//for each迴圈

goodsmutmap.foreach,名稱:$\n")

}

Python 學習筆記3(條件 迴圈)

1 條件判斷 這個和c語言有點類似,看下面 age 20if age 18 print your age is age print adult 你發現了什麼,if後面有個冒號,而且如果age小於18你猜結果會是怎樣,如果是c語言那麼肯定會輸出 adult 而py不會輸出 說明py的 執行和縮排有關 ...

3 條件 迴圈

usr bin perl w use feature qw say 列印內容自動換行,不用手動加 n my var ifif var if else if var else if elsif 注意是elsif,不是elif,sv中也是elsif if var 10 elsif var 5 else ...

五 條件控制語句

執行流程 如果為false,則不執行。例如 num 50 if num 20 print num比20大 輸出 num比20大 語法 if 條件表示式 塊input rint 123 輸出 123username input if usename admin 輸出 沒有提示 admin userna...