1.順序結構:
2.判斷結構:
if(條件表示式)
執行語句是單條語句時,大括號可以省略。(for也一樣)
乙個if整體就相當於乙個單條語句。單條語句一般以分號或者大括號結束。
if(條件表示式)
else
執行語句1,2只會而且肯定會執行乙個。
三元運算子?:就是if else 語句的簡寫格式:
當if else 運算後,有乙個具體的結果時,可以簡寫成三元運算子。如三元運算子不能直接執行輸出語句。
if(條件表示式1)
else
if(條件表示式2)
...else
3.選擇結構:
switch(表示式)
能選擇的資料只有4種:byte short int char等。
switch大括號裡的內容會全部載入到記憶體,所以內容沒有順序,但是程式會先執行第乙個case,然後依次讀,最後讀default。
靠近尾部大括號的break可以省略。
如果正確case的break省略掉了,那麼後面的case裡的執行語句會繼續執行。可應用於單項多選擇條件。
default裡的break不代表程式結束,可以在開頭或者中間,因為內容沒有順序。
開發的時候,if和switch的使用場景:
if: 1.對具體的值進行判斷
2.對區間判斷
3.對運算結果是boolean型別的表示式進行判斷
switch:
1.對具體的值進行判斷(值的個數通常是固定的)
對於幾個固定的值判斷,建議使用switch語句,因為switch語句會將具體的答案都載入進記憶體,效率相對高一些。但是不常用,因為switch功能性差,書寫麻煩。
4.迴圈結構:while, do while, for
1.
while(條件表示式)
ctrl + c 結束控制台的執行
注意控制兩點:迴圈條件,迴圈次數。
2.
do
while(條件表示式);
開發用的較少
3.
for(初始化表示式;迴圈條件表示式;**迴圈後** 的操作表示式)
多個表示式用逗號隔開。
迴圈條件必須是boolean值。
例子:
int x = 1;
for(system.out.println("a"); x < 3; system.out.println("b"))
//acbcb
for 和 while 的區別:
1.for和while可以互換。
2.如果需要通過變數來對迴圈進行控制,該變數只作為迴圈增量存在時,小區別就出來了:
for迴圈初始化的變數在迴圈結束後會消失,不能再次使用(節省記憶體空間)。
如果迴圈變數還需要繼續使用,優先使用while。
無限迴圈應用:能有讓迴圈適當的等待(不知道迴圈多少次,阻塞式方法),不定義變數控制次數。
while(true)
for( ;(不寫預設就是true) ; )
常用的:if
while
for迴圈結構使用場景:
1.當對某些**執行很多次時,使用迴圈結構完成。
2.當對乙個條件進行一次判斷的時候,可以使用if語句。
3.當對乙個條件進行多次判斷的時候,可以使用while語句。
注意:
1.在使用迴圈時,要明確哪些是需要參與迴圈的語句。
2.迴圈通常情況下,需要定義條件,和控制迴圈次數。
5.迴圈巢狀:
/*大圈套小圈思想:
一種重複的情況,這種重複情況中的每一次又對應另外一種情況多次。
*/for(int i = 0; i < 4; i++) //外迴圈控制的是行數
system.out.println();
}
6.轉義符:
\n : 換行
\t:製表符
\b:退格
\r:返回行首
在linux下的換行:\n
\r 使游標移動到本行行首,
\n 使游標移動到下一行行首
在windows下的換行:\r
\n\r
\n 使游標移動到本行行首,然後移動到下一行行首
7.其他流程控制語句:
break:跳出當先迴圈,用於選擇結構(switch),迴圈結構
continue:結束本次迴圈,繼續下次迴圈,用於迴圈結構
break,continue單獨存在時,下面不要定義其他語句,會報錯。
可以用if控制break何時跳出:
if(x>1)
break;
如果出現了迴圈巢狀,break/continue想要跳出或者繼續指定的迴圈,可以通過標號來完成:
xiaoqiao: for()
}
14 Java多執行緒 併發安全
三 如何做到執行緒安全?四 執行緒不安全引起的問題 4.2 活鎖 4.3 執行緒飢餓 五 效能和思考 六 鎖優化 七 單例模式 八 小結 4.1.1 死鎖的條件 條件描述 資源競爭 競爭資源一定大於1個,且小於競爭的執行緒數量 不可剝奪 獲得資源後不可剝奪,只能由執行緒自己釋放 資源獨佔 資源被執行...
LeetCode 刷題記錄(14) Java語言
編寫乙個函式來查詢字串陣列中的最長公共字首。如果不存在公共字首,返回空字串 示例 1 輸入 flower flow flight 輸出 fl 示例 2 輸入 dog racecar car 輸出 解釋 輸入不存在公共字首。通過尋找長度最小的字串從其字首開始依次增長並與其他字串做匹配。class so...
java控制語句
if else 語句 switch case 語句 while 迴圈 do while 迴圈 for 迴圈 continue break return 順序結構 判斷結構 迴圈結構 都是流程語句 if else 語句測試條件的結果,然後根據此結果來執行相應的操作 它可用於以兩個不同的路徑來執行程式 ...