如果case 中不加break,會一直執行,知道},或break,結束
如:
- public class Main {
- public static void main(String[] args)
- {
- //int x = 5, y = 4,xx = 6;
- char a = 'f';
- switch(a)
- {
- default :System.out.println("d");
- case 'a':System.out.println("a");
- case 'b':System.out.println("b");break;
- case 'c':System.out.println("c");break;
- }
- // System.out.println("56");
- }
- }
執行結果是 d 、a、b
if與switch區別
if:
1.對具體的值進行判斷
2.對區間進行判斷
3.對運算結果是boolean類型的表達式進行判斷
switch:
1.對具體的值進行判斷
2.值的個數是固定的
PS:對於幾個固定的值,最好使用switch,因爲switch會一次性把具體的答案都加載進內存,效率相對較高
switch不大常用,功能性較差,且書寫麻煩
在windows系統中回車符是 \r\n;
Linux系統是\n
函數:
函數的定義:
修飾符(public 可加可不加,起到一個權限的作用) 函數類型 函數名(參數類型 參數名,參數類型 參數名)
{
執行語句;
return 返回值;
}
- import java.util.Scanner;
- public class Main
- {
- public static void main(String[] args)
- {
- Scanner cin = new Scanner(System.in);
- int n = cin.nextInt();
- int a = cin.nextInt();
- int ans = sum(n,a);
- System.out.println("ans = " +ans);
- int ans1 = sub(a,n);
- System.out.println("ans1 = "+ans1);
- cin.close();
- }
- static int sum(int a,int b)//不加public
- {
- return a+ b;
- }
- public static int sub(int a,int b) //加public
- {
- return a-b;
- }
- }
函數的重載:
同函數名,參數類型不同,執行的功能特點一樣,如:都是加,都是減,找最大
比較簡單和特點C++基本相同
事例代碼:
- import org.omg.CosNaming.NamingContextExtPackage.AddressHelper;
- public class Main
- {
- public static void main(String[] args)
- {
- int ans = add(4,5);
- int sum = add(5,6,7);
- System.out.println(ans);
- System.out.println(sum);
- }
- static int add(int x,int y)
- {
- return x +y;
- }
- static int add(int x,int y,int z)
- {
- // return x + y + z;
- return add(x, y) + z;/*前面已經定義過的額函數,就可以進行調用,
- 所以,函數重載,有一些重複的功能,可以互相調用*/
- }
- }