java基礎控制語句 方法及遞迴

2021-09-05 01:26:30 字數 4184 閱讀 8093

1選擇結構

if單選擇結構

/**

* 測試if語句

* @author memorial

* */

public class test

system.out.println("########################################");

//通過擲三個骰子看看今天的手氣如何?

int i = (int)(6 * math.random()) + 1;//通過math.random()產生隨機數

int j = (int)(6 * math.random()) + 1;

int k = (int)(6 * math.random()) + 1;

int count = i + j + k;

//如果三個骰子之和大於15,則手氣不錯

if(count > 15)

//如果三個骰子之和在10到15之間,則手氣一般

if(count >= 10 && count <= 15)

//如果三個骰子之和小於10,則手氣不怎麼樣

if(count < 10)

system.out.println("得了" + count + "分");

}

}

if-else選擇結構

/**

* 測試if-else語句

* @author memorial

* */

public class test2 else

}}

swicth選擇結構

public class test6 

}}

2.迴圈結構

while語句

public class test7 

system.out.println("sum= " + sum);

}}

do-while語句

public class test8  while (i <= 100);//此處的;不能省略

system.out.println("sum= " + sum);

}

for迴圈

public class test10 

system.out.println("sum= " + sum);

//2.迴圈輸出9-1之間的數

for(int i=9;i>0;i--)

system.out.println();

//3.輸出90-1之間能被3整除的數

for(int i=90;i>0;i-=3)

system.out.println();

}}

巢狀迴圈

public class test15 

system.out.println();}}

}

break和continue語句

/**

* 測試break和continue

* @author 86176

* */

public class test3

} //輸出迴圈的次數

system.out.println("game over,used "+total+"times.");

}}

/**

* 測試continue語句

* @author memorial

* */

//把100~150之間不能被3整除的數輸出,並且每行輸出5個數

public class test4

//否則(不是3的倍數),輸出該數值

system.out.print(i+"、");

count++;//每輸出乙個數,計數器加1

if(count %5==0)

}}}

帶標籤的break和continue語句

/**

* 測試帶標籤break和continue

* @author memorial

* */

//列印101-150之間的所有質數

public class test5

private static int add(int n1, int n2)

private static void print()

}

4.方法的過載

過載的方法,實際是完全不同的方法,只是名稱相同而已!

構成方法過載的條件:

1.不同的含義:形參型別、形參個數、形參順序不同

2.只有返回值不同不構成方法的過載

3.只有形參的名稱不同,不構成方法的過載

/**

* 測試方法的過載

* @author memorial

* */

//過載方法,實際是完全不同的方法,只是名稱相同

//在形參型別、形參個數、形參順序不同的情況下構成過載

public class test7

/** 求和的方法 */

public static int add(int n1, int n2)

// 方法名相同,引數個數不同,構成過載

public static int add(int n1, int n2, int n3)

// 方法名相同,引數型別不同,構成過載

public static double add(double n1, int n2)

// 方法名相同,引數順序不同,構成過載

public static double add(int n1, double n2)

//編譯錯誤:只有返回值不同,不構成方法的過載

public static double add(int n1, int n2)

//編譯錯誤:只有引數名稱不同,不構成方法的過載

public static int add(int n2, int n1)

}

5.遞迴

遞迴結構包括兩個部分:

1.定義遞迴頭。解答:什麼時候不呼叫自身方法。如果沒有頭,將陷入死迴圈,也就是遞迴的結束條件。

2.遞迴體。解答:什麼時候需要呼叫自身方法。

/**

* 測試遞迴

* @author memorial

* */

public class test8

static int count=0;

static void a()

else

}static void b()

}

/**

* 測試遞迴

* @author 86176

* */

//求階乘

public class test9

/**求階乘的方法**/

static long factorial(int n)

else

}}

1.從結構化程式設計角度出發,程式有三種結構:順序結構、選擇結構和迴圈結構

2.選擇結構

(1)if單選擇結構 if-else雙選擇結構 if-else if-else多選擇結構

(2)switch多選擇結構

3.多選擇結構與switch的關係:當布林表示式是等值判斷的情況,可使用多重選擇結構或switch結構,如果布林表示式區間判斷的情況,則只能使用多重選擇結構

(1) 迴圈結構

(2)當型:while與for

(3)直到型:do-while

4.while與do-while的區別,在布林表示式的值為false時while的迴圈體一次也不執行,而do-while至少執行一次

5.break可以在switch與迴圈結構中使用,而continue只能在迴圈結構中使用

6.方法就是一段用來完成特定功能的**片段,類似於其它語言的函式

7.方法的過載是指乙個類中可以定義多個方法名相同,但引數不同的方法。 呼叫時,會根據不同的引數自動匹配對應的方法

8.任何能用遞迴解決的問題也能使用迭代解決。在要求高效能的情況下盡量避免使用遞迴,遞迴呼叫既花時間又耗記憶體。

Java基礎 控制語句

1.順序結構 2.選擇結構 單選擇結構 if語句 格式 if 表示式 或者if 表示式 語句 注意 如果不加花括號,那麼if控制的語句只是第一句。雙選擇結構 if else語句 格式 if else 多選擇結構 if else if else if.switch語句 格式 switch 表示式 sw...

java控制語句

if else 語句 switch case 語句 while 迴圈 do while 迴圈 for 迴圈 continue break return 順序結構 判斷結構 迴圈結構 都是流程語句 if else 語句測試條件的結果,然後根據此結果來執行相應的操作 它可用於以兩個不同的路徑來執行程式 ...

java基礎 判斷與迴圈控制語句

判斷與迴圈控制語句 程式的結構 一般來說程式的結構包含有下面三種 1 順序結構 2 選擇結構 3 迴圈結構 順序結構 程式至上而下逐行執行,一條語句執行完之後繼續執行下一條語句,一直到程式的末尾。選擇結構 選擇結構式根據條件的成立與否,再決定要執行哪些語句的一種結構。迴圈結構 迴圈結構則是根據判斷條...