欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java基礎(chǔ)精講方法的使用

 更新時間:2022年05月07日 15:45:51   作者:菜菜不恰菜  
方法,也稱函數(shù),如果想要重復(fù)一段或者多段代碼塊的使用,可以將這些代碼封裝成一個方法,方法具體表現(xiàn)為某種行為,使用方法可以提高代碼的復(fù)用性

一、方法

方法是什么?

在Java中方法就相當于C語言中的函數(shù)。因為有時候我們需要一塊代碼重復(fù)使用,這時候就可以使用方法。

為什么要用方法?

1. 是能夠模塊化的組織代碼 ( 當代碼規(guī)模比較復(fù)雜的時候 ).

2. 做到代碼被重復(fù)使用 , 一份代碼可以在多個位置使用 .

3. 讓代碼更好理解更簡單 .

4. 直接調(diào)用現(xiàn)有方法開發(fā) , 不必重復(fù)造輪子

方法的基本語法格式:

public static 返回類型 方法名稱(形參列表){}

在這里要注意形參是實參的一份臨時拷貝,形參并不能改變實參?。?!

來看個例子:

public class TestModer {
public static void main(String[] args) {
        int a = 10;
        int b = 20;
        System.out.println("交換前"+"a = " + a + " b = " + b);
        swap(a, b);
        System.out.println("交換后"+"a = " + a + " b = " + b);
    }
    public static void swap(int x, int y) {
        int tmp = x;
        x = y;
        y = tmp;
    }
}

我們可以看看運行結(jié)果:

我們可以看到這里是傳值調(diào)用,所以改變形參并不能改變實參。還有需要注意的就是在C語言中,被調(diào)用的函數(shù)需要放在調(diào)用函數(shù)前面,在Java中,方法的位置可以放前面也可以放后面,因為在Java中是從主函數(shù)開始執(zhí)行的。

二、方法的重載

方法的重載是什么意思呢?我們通過一個例子來了解:

public class TestModer {
public static void main(String[] args) {
 int a = 10;
 int b = 20;
 int ret = add(a, b);
 System.out.println("ret = " + ret);
 double a2 = 10.5;
 double b2 = 20.5;
 double ret2 = add(a2, b2);
 System.out.println("ret2 = " + ret2);
 double a3 = 10.5;
 double b3 = 10.5;
 double c3 = 20.5;
 double ret3 = add(a3, b3, c3);
 System.out.println("ret3 = " + ret3);
public static int add(int x, int y) {
 return x + y;
   }
 public static double add(double x, double y) {
 return x + y;
   }
 public static double add(double x, double y, double z) {
 return x + y + z;
   }
}

在這里我們可以看到結(jié)果:

我們可以看看這三個方法,分別代表了兩個整數(shù)的加法,兩個浮點數(shù)的加法,三個浮點數(shù)的加法。這三個方法的方法名字都相同,第一個方法和第二個方法參數(shù)個數(shù)相同,第二個方法和第三個方法參數(shù)類型相同。

在C語言中同一個工程中每個函數(shù)函數(shù)名不能相同,但是Java中這里可以,同一個方法名字, 提供不同版本的實現(xiàn), 稱為 方法重載。

重載需要滿足的條件:

1、方法名相同 。

2、方法的參數(shù)不同 ( 參數(shù)個數(shù)或者參數(shù)類型 ) 。

3、方法的返回值類型不做要求。

三、方法遞歸

遞歸是什么?

一個方法在執(zhí)行過程中調(diào)用自身 , 就稱為 " 遞歸 "。

注意:

1、遞歸需要有個趨近于終止的條件,否則會無限循環(huán)。

2、每次執(zhí)行會越來越接近這個條件。

遞歸執(zhí)行過程是什么樣的呢?來看看幾個例題:

//輸出一個整數(shù)的每一位,如:123的每一位是1 ,2 ,3
public class TestModer {   
public static void print(int n) {
        if (n < 10) {
            System.out.print(n + " ");
        } else {
            print(n / 10);
            System.out.print(n % 10 + " ");
        }
    }
    public static void main5(String[] args) {
        int num = 123;
        print(num);
    }
}

我們可以看到方法print自己調(diào)用自己的過程,每次執(zhí)行時,n都越來越接近終止條件,這就是遞歸的一個過程。

//求斐波那契數(shù)列的第3項。(遞歸實現(xiàn))
    public class TestModer {
    public static int fib(int num) {
        if(num==1||num==2){
            return 1;
        }
        else{
            return fib(num-1)+fib(num-2);
        }
    }
    public static void main(String[] args) {
        int n=3;
        int x=fib(n);
        System.out.println(x);
    }
}

四、小結(jié)

以上就是方法的一些使用,其中遞歸是一種重要的編程解決問題的方式,有些問題天然就是使用遞歸方式定義的(例如斐波那契數(shù)列, 二叉樹等), 此時使用遞歸來解就很容易,有些問題使用遞歸和使用非遞歸(循環(huán))都可以解決,那么此時更推薦使用循環(huán), 相比于遞歸, 非遞歸程序更加高效。

到此這篇關(guān)于Java基礎(chǔ)精講方法的使用的文章就介紹到這了,更多相關(guān)Java方法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 如何對quartz定時任務(wù)設(shè)置結(jié)束時間

    如何對quartz定時任務(wù)設(shè)置結(jié)束時間

    這篇文章主要介紹了如何對quartz定時任務(wù)設(shè)置結(jié)束時間問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • 一文詳解Reactor模型與實現(xiàn)示例

    一文詳解Reactor模型與實現(xiàn)示例

    這篇文章主要為大家介紹了Reactor模型與實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03
  • Java中的ReadWriteLock高效處理并發(fā)讀寫操作實例探究

    Java中的ReadWriteLock高效處理并發(fā)讀寫操作實例探究

    這篇文章主要為大家介紹了Java中的ReadWriteLock高效處理并發(fā)讀寫操作實例探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2024-01-01
  • JFinal實現(xiàn)偽靜態(tài)的方法

    JFinal實現(xiàn)偽靜態(tài)的方法

    JFinal 是基于 Java 語言的極速 WEB + ORM 框架,其核心設(shè)計目標是開發(fā)迅速、代碼量少、學習簡單、功能強大、輕量級、易擴展、Restful。這篇文章主要介紹了JFinal實現(xiàn)偽靜態(tài),需要的朋友可以參考下
    2018-04-04
  • Java contains用法示例

    Java contains用法示例

    這篇文章主要介紹了Java contains的用法示例,幫助大家更好的理解和學習Java,感興趣的朋友可以了解下
    2020-11-11
  • springboot配置允許循環(huán)依賴問題

    springboot配置允許循環(huán)依賴問題

    這篇文章主要介紹了springboot配置允許循環(huán)依賴問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 鏈表的原理及java實現(xiàn)代碼示例

    鏈表的原理及java實現(xiàn)代碼示例

    這篇文章主要介紹了鏈表的原理及java實現(xiàn)代碼示例,涉及單向鏈表的基本介紹,單向鏈表的Java實現(xiàn)代碼分享等相關(guān)內(nèi)容,具有一定參考價值,需要的朋友可以參考下。
    2017-11-11
  • java中的三種取整函數(shù)總結(jié)

    java中的三種取整函數(shù)總結(jié)

    下面小編就為大家?guī)硪黄猨ava中的三種取整函數(shù)總結(jié)。希望對大家有所幫助。一起跟隨小編過來看看吧,祝大家游戲愉快哦
    2016-11-11
  • SpringBoot3整合Druid監(jiān)控功能的項目實踐

    SpringBoot3整合Druid監(jiān)控功能的項目實踐

    Druid連接池作為一款強大的數(shù)據(jù)庫連接池,提供了豐富的監(jiān)控和管理功能,成為很多Java項目的首選,本文主要介紹了SpringBoot3整合Druid監(jiān)控功能的項目實踐,感興趣的可以了解一下
    2024-01-01
  • idea 如何查找類中的某個方法

    idea 如何查找類中的某個方法

    這篇文章主要介紹了idea 如何查找類中的某個方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02

最新評論