教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

java方法怎么用?【java方法使用教程】

更新時間:2019年07月16日16時33分 來源:傳智播客 瀏覽次數(shù):

java方法可以理解為是語句的集合,它們在一起執(zhí)行一個功能。假設(shè)有一個游戲程序,程序在運行過程中,要不斷地發(fā)射炮彈。發(fā)射炮彈的動作需要編寫100行的代碼,在每次實現(xiàn)發(fā)射炮彈的地方都需要重復(fù)地編寫這100行代碼,這樣程序會變得很臃腫,可讀性也非常差。為了解決代碼重復(fù)編寫的問題,可以將發(fā)射炮彈的代碼提取出來放在一個{}中,并為這段代碼起個名字,這樣在每次發(fā)射炮彈的地方通過這個名字來調(diào)用發(fā)射炮彈的代碼就可以了。上述過程中,所提取出來的代碼可以被看作是程序中定義的一個方法,程序在需要發(fā)射炮彈時調(diào)用該方法即可m接下來通過一些案例來介紹方法在程序中起到的作用,先來看一下在不使用方法時如何實現(xiàn)打印三個長寬不同的矩形。
 
public class example1 {
         public static void main(String[] args) {
                   //使用的循環(huán)是使用*打印一個寬為5、高為3的矩形
                   for (int i=0; i<3 ;i++ ) {
                            for (int j=0;j<5 ;j++) {
                                     System.out.print("*");
                            }
                            System.out.print("\n");
                   }
                   System.out.print("\n");
                   //使用的循環(huán)是使用*打印一個寬為4、高為2的矩形
                   for (int i=0; i<2 ;i++ ) {
                            for (int j=0;j<4 ;j++) {
                                     System.out.print("*");
                            }
                            System.out.print("\n");
                   }
                   System.out.print("\n");
                   //使用的循環(huán)是使用*打印一個寬為10、高為6的矩形
                   for (int i=0; i<6 ;i++ ) {
                            for (int j=0;j<10 ;j++) {
                                     System.out.print("*");
                            }
                            System.out.print("\n");
                   }
                   System.out.print("\n");
         }
}

 
運行結(jié)果

運行結(jié)果
example1.java運行結(jié)果
 
 
在上面案例中,分別使用三個嵌套for循環(huán)完成了三個矩形的打印,仔細(xì)觀察會發(fā)現(xiàn),這三個嵌套for循環(huán)的代碼是重復(fù)的,都在做一樣的事情。此時,就可以將使用“*”打印矩形的功能定義為方法,在程序中調(diào)用三次即可,例如:example2.java。
 
public classe example2 {
         public static void main(String[] args) {
                   printRectangle(3, 5);
                   printRectangle(2, 4);
                   printRectangle(6, 10);
         }
         public static void printRectangle(int height, int width) {
                   //下面使用嵌套for循環(huán)實現(xiàn)*打印
                   for (int i=0; i<height ;i++ ) {
                            for (int j=0;j<width;j++) {
                                     System.out.print("*");
                            }
                            System.out.print("\n");
                   }
                   System.out.print("\n");
         }
}

 
運行結(jié)果與example1.java運行結(jié)果相同。
 
在example2.java中定義了一個方法。其中{}內(nèi)實現(xiàn)打印矩形的代碼是方法體, printRectangle()是方法名, ()中的height和 width是方法的參數(shù),方法名前面的void是方法的返回值類型。
在Java中,聲明一個方法的具體語法格式如下:
 
修飾符 返回值類型 方法名 ([參數(shù)類型 參數(shù)名 1,參數(shù)類型 參數(shù)名 2,…]){
         執(zhí)行語句
         …
         return 返回值;
}

 
 
對于上面的語法格式具體說明如下。
 
修飾符:方法的修飾符比較多,有對訪問權(quán)限進行限定的,有靜態(tài)修飾符static,還有最終修飾符final等,這些修飾符在后面的學(xué)習(xí)過程中會逐步介紹。
返回值類型:用于限定方法返回值的數(shù)據(jù)類型。
參數(shù)類型:用于限定調(diào)用方法時傳入?yún)?shù)的數(shù)據(jù)類型。
參數(shù)名:是一個變量,用于接收調(diào)用方法時傳入的數(shù)據(jù)。
return關(guān)鍵字:用于結(jié)束方法以及返回方法指定類型的值。
返回值:被return語句返回的值,該值會返回給調(diào)用者。需要特別注意的是,方法中的“參數(shù)類型參數(shù)名1,參數(shù)類型參數(shù)名2”被稱作參數(shù)列表,它用于描述方法在被調(diào)用時需要接收的參數(shù),如果方法不需要接收任何參數(shù),則參數(shù)列表為空,即()內(nèi)不寫任何內(nèi)容。方法的返回值必須為方法聲明的返回值類型,如果方法中沒有返回值,返回值類型要聲明為void,此時,方法中return語句可以省略。
由于example2.java中 printRectangle()方法沒有返回值,接下來通過一個案例來法中有返回值的情況,例Example3.java
 
public classe example3  {
         public static void main(String[] args) {
                   int area=getArea(3,5);            //調(diào)用getArea方法
                   System.out.print("The area is"+area);
         }
         //下面定義了一個球矩形面積的方法,接收兩個參數(shù),其中x為高,y為寬
         public static int getArea(int x,int y) {
                   int temp=x*y;      //使用變量temp記住運算結(jié)果
                   return temp;      //將變量temp的值返回
         }
}

 
運行結(jié)果為:
The area is 15

 
example3.java中,定義了一個getArea()方法用于求矩形的面積,參數(shù)x和y分別用于接收調(diào)用方法時傳入的高和寬,return語句用于返回計算所得的面積。在main(方法中通過調(diào)用getArea()方法,獲得矩形的面積,并將結(jié)果打印。
 
在程序運行期間,參數(shù)x和y相當(dāng)于在內(nèi)存中定義的兩個變量當(dāng)調(diào)用getArea()方法時,傳入的參數(shù)3和5分別賦值給變量x和y,并將x*y的結(jié)果通過return語句返回,整個方法的調(diào)用過程結(jié)束,變量x和y被釋放。

推薦了解熱門學(xué)科
java培訓(xùn) python人工智能 web前端 UI設(shè)計培訓(xùn) 軟件測試培訓(xùn)
PHP+H5 C++ 新媒體培訓(xùn) 大數(shù)據(jù)培訓(xùn) 區(qū)塊鏈培訓(xùn)
產(chǎn)品經(jīng)理培訓(xùn) Linux運維培訓(xùn) 影視制作培訓(xùn) 智能機器人軟件開發(fā)



0 分享到:
和我們在線交談!