javase基礎5
阿新 • • 發佈:2017-05-29
返回 水仙花 scanner 實際參數 ber 修飾符 sca 創建 寫法
1.方法格式
修飾符 返回值類型 方法名(參數類型 參數名1,參數類型 參數名2…) {
函數體;
return 返回值;
}
修飾符: public static 等
返回值類型:用於限定返回值的數據類型
方法名:一個名字,為了方便我們調用方法
參數類型:用於接收調用方法時傳入的數據的類型
參數名:用於接收調用方法時傳入的數據的變量
方法體:完成特定功能的代碼
return:結束方法,把返回值帶個調用者
寫一個方法需要明確:參數列表和返回值類型
2.方法獲取兩個數的最大值
import java.util.Scanner;/* * 鍵盤錄入兩個數據,返回兩個數中的較大值 * * 兩個明確: * 返回值類型:int * 參數列表:int a,int b */ public class Demo1{ // 返回兩個數中的較大值 public static int getMax(int a, int b) { if (a > b) { return a; } else { return b; } } public static void main(String[] args) {//創建對象 Scanner sc = new Scanner(System.in); //接收數據 System.out.println("請輸入第一個數據:"); int x = sc.nextInt(); System.out.println("請輸入第二個數據:"); int y = sc.nextInt(); //調用方法 int max = getMax(x,y); System.out.println("max:"+max); } }
3.判斷倆個數是否相等
public class Demo2{ //比較兩個數是否相等 public static boolean compare(int a,int b){ if(a==b){ return true; }else { return false; } } public static void main(String[] args) { //創建對象 Scanner sc = new Scanner(System.in); //接收數據 System.out.println("請輸入第一個數據:"); int a = sc.nextInt(); System.out.println("請輸入第二個數據:"); int b = sc.nextInt(); //調用方法 boolean flag = compare(a,b); System.out.println("flag:"+flag); } }
4.獲取三個數中的最大值
// 返回三個數中的最大值 public static int getMax(int a, int b, int c) { if (a > b) { if (a > c) { return a; } else { return c; } } else { if (b > c) { return b; } else { return c; } } } public static void main(String[] args) { //創建對象 Scanner sc = new Scanner(System.in); //接收數據 System.out.println("請輸入第一個數據:"); int a = sc.nextInt(); System.out.println("請輸入第二個數據:"); int b = sc.nextInt(); System.out.println("請輸入第三個數據:"); int c = sc.nextInt(); //調用方法 int max = getMax(a,b,c); System.out.println("max:"+max); } }
5.打印一到n的數據
public class Demo4{ //在控制臺打印1到該數據n的值 public static void printNumber(int n) { for(int x=1; x<=n; x++) { System.out.println(x); } } public static void main(String[] args) { printNumber(10); System.out.println("-------------------"); printNumber(100); } }
6.打印水仙花數
public class Demo5{ //把所有的水仙花數打印在控制臺 public static void printFlower() { for(int x=100; x<1000; x++) { int ge = x%10; int shi = x/10%10; int bai = x/10/10%10; if((ge*ge*ge+shi*shi*shi+bai*bai*bai) == x){ System.out.println(x); } } } public static void main(String[] args) { printFlower(); } }
7.方法重載
在同一個類中,允許存在一個以上的同名方法,只要它們的參數個數或者參數類型不同即可
特點:與返回值類型無關,只看方法名和參數列表
案例:
/* * 比較兩個數據是否相等。參數類型分別為兩個byte類型,兩個short類型,兩個int類型,兩個long類型, * 並在main方法中進行測試 */ public class Demo6{ public static void main(String[] args) { // 調用 System.out.println(compare(10, 20)); System.out.println("-------------"); System.out.println(compare((byte)10, (byte)20)); System.out.println("-------------"); System.out.println(compare((short)10, (short)20)); System.out.println("-------------"); //System.out.println(compare((long)10, (long)20)); System.out.println(compare(10L, 20L)); } // 兩個byte類型的 public static boolean compare(byte a, byte b) { System.out.println("byte"); // 第一種寫法 // boolean flag = a==b?true:false; // return flag; // 第二種寫法 // boolean flag = a == b; // return flag; // 第三種寫法 return a == b; } // 兩個short類型的 public static boolean compare(short a, short b) { System.out.println("short"); return a == b; } // 兩個int類型的 public static boolean compare(int a, int b) { System.out.println("int"); return a == b; } // 兩個long類型的 public static boolean compare(long a, long b) { System.out.println("long"); return a == b; } }
8.方法中參數的傳遞
方法的參數是基本數據類型的時候:形式參數的改變不影響實際參數
形式參數:用於接收實際數據的變量
實際參數:實際參與運算的變量
當形式參數是引用數據類型時:
/* * 方法的參數是引用類型: * 形式參數的改變直接影響實際參數 */ public class Demo7{ public static void main(String[] args) { // 定義數組 int[] arr = { 1, 2, 3, 4, 5 }; // 遍歷數組 for (int x = 0; x < arr.length; x++) { System.out.println(arr[x]); } System.out.println("----------------"); change(arr); for (int x = 0; x < arr.length; x++) { System.out.println(arr[x]); } } public static void change(int[] arr) { for (int x = 0; x < arr.length; x++) { // 如果元素是偶數,值就變為以前的2倍 if (arr[x] % 2 == 0) { arr[x] *= 2; } } } }
9.數組元素求和
/* * 寫一個方法,用於對數組進行求和,並調用方法。 */ public class Demo8 { public static void main(String[] args) { // 定義數組 int[] arr = { 1, 2, 3, 4, 5 }; int sum = sum(arr); System.out.println("sum:"+sum); } //第一一個求和方法 public static int sum(int[] arr) { int sum = 0; for(int x=0; x<arr.length; x++) { sum += arr[x]; } return sum; } }
javase基礎5