目錄
方法的定義
方法的命名規則
方法的調用與重載
方法調用實例
方法的重載
變量的作用域
算法中常見的方法
1:gcd(求兩個整數中的最大公約數)
2:lcm(求兩個整數的最小公倍數)
3:判斷一個整數是否為質數
?
整篇完整代碼
?
方法的定義
System.out.println();
println()是一個方法
System是系統類
out是標準輸出對象
這句話的用法就是調用系統類System中的標準輸出對象Out中的方法println()
方法的命名規則
一般情況下,定義一個方法包含以下幾種語法:
修飾符 返回值類型 方法名(參數類型? 參數名){
`````
方法體
`````
return 返回值;
}
方法包含一個方法頭和方法體?
方法體包含具體的語句
方法的調用與重載
java支持兩種調用方法的方式,根據方法是否返回值來選擇。
當程序調用一個方法時,程序的控制權交給了被調用的方法。當被調用方法的返回語句執行或者到達方法體閉括號時候交還控制權給程序。
1:當方法返回一個值的時候,方法調用通常被當作一個值。例如:
int larger=max(30,45);
2:如果方法的返回值時void,方法調用一定是一條語句。例如,方法println返回void。下面的調用時個語句:
System.out.println("歡迎訪問撒旦");
方法調用實例
public static void main(String[] args){
? ? ? ? Liuhanlin();
? ? ? ? max(2,4);
}
public static void Liuhanlin(){
? ? ? ? System.out.println("好好好");
}
public static void max(int i,int j){
? ? ? ? if(i<j){
? ? ? ? ? ? ? ? i=j;
????????}
? ? ? ? Sytsem.out.println("最大值為:"+i);
}
方法的重載
一個類的兩個方法擁有相同的名字,但有不同的參數列表。
java編譯器根據方法簽名判斷哪個方法應該被調用。
方法重載可以讓程序更清晰一度。執行密切相關任務的方法應該使用相同的名字。
重載的方法必須擁有相同的參數列表。不能僅僅依賴修飾符或者返回類型的不同來重載方法。
變量的作用域
變量的范圍是程序中該變量可以被引用的部分。
方法內定義的變量被稱為局部變量。
局部變量的作用從聲明開始,直到包含它的塊結束。
方法的參數范圍必須涵蓋整個方法。參數實際上就是一個局部變量。
for循環的初始化部分聲明的變量,其作用范圍在整個循環。
算法中常見的方法
1:gcd(求兩個整數中的最大公約數)
//求兩個數中的最大公約數public static int gcd (int x,int y){if(y==0)retrun x;return gcd(y,x%y);}
java中沒有自帶的gcd方法
package Peculiar;public class Main {public static void main(String[] args){int k=gcd(3,9);System.out.println(k);}public static int gcd(int x,int y) {if(y==0) {return x;}else {return gcd(y,x%y);}} }
2:lcm(求兩個整數的最小公倍數)
public static int Icm(int x,int y){
? ? ? ? return x*y/gcd(x,y);
}
3:判斷一個整數是否為質數
public static boolean isPrime(int x){if(x==1) {return false;}for(int i=2;i<x;i++) {if(x%i==0) return false;}return true;}
?
整篇完整代碼
?
? package Peculiar;public class Main {public static void main(String[] args){int k=gcd(3,9);int m=Icm(4,32);boolean p=isPrime(8);System.out.println(k);System.out.println(m);System.out.println(p);}public static int gcd(int x,int y) {if(y==0) {return x;}else {return gcd(y,x%y);}}public static int Icm(int x,int y){return x*y/gcd(x,y);}public static boolean isPrime(int x){if(x==1) {return false;}for(int i=2;i<x;i++) {if(x%i==0) return false;}return true;} }?