91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java方法如何定義與使用

發布時間:2022-03-15 09:07:42 來源:億速云 閱讀:153 作者:iii 欄目:開發技術

這篇文章主要介紹了Java方法如何定義與使用的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Java方法如何定義與使用文章都會有所收獲,下面我們一起來看看吧。

    一、方法的基本用法

    1.1 什么是方法(method)

    方法就是一個代碼片段. 類似于 C 語言中的 "函數"。方法可以把它理解為一個功能,這個功能是可以重復使用的。

    1.2 方法定義語法 

    目前來說寫任何方法的時候都寫成:

    pubiic static 返回值 返回名稱(形式參數列表){

    函數體/方法體

    }

    代碼舉例:求1-n的和

     /**
         * 求我們1-n的和
         * 函數名字必須采用小駝峰
         * @param n 輸入一個數字
         */
        public static int sumAdd(int n){
            int sum = 0;
            for(int i = 1;i <= 10;i++){
                sum += i;
            }
            return sum;
        }
     
        public static void main(String[] args) {
            int ret = sumAdd(10);//方法的調用
        }

    畫圖講解:

    Java方法如何定義與使用

    函數返回值的鏈式調用:

    還是按照上面的例子給大家舉例一下: 

    /**
         * 求我們1-n的和
         * 函數名字必須采用小駝峰
         * @param n 輸入一個數字
         */
        public static int sumAdd(int n){
            int sum = 0;
            for(int i = 1;i <= 10;i++){
                sum += i;
            }
            return sum;
        }
     
        public static void main(String[] args) {
            int ret = sumAdd(10);//方法的調用
            System.out.println(sumAdd(10)*2);//函數的返回值,支持鏈式調用
        }

    畫圖講解:

    Java方法如何定義與使用

     在Java里面沒有函數聲明,不管你的函數在main函數的上面還是在下面,都可以調用

    1.3方法的開辟 

    函數開辟內存空間叫做函數棧幀,每個函數調用的時候都會開辟棧幀,屬于這個函數的內存

    函數在內存空間是如何調用的:

    Java方法如何定義與使用

    舉例:用函數的方法求n的階乘之和 

    用函數的方法求n的階乘之和
    public static int Fac(int n) {
            int sum = 1;
            for (int i = 1; i <= n; i++) {
                sum = sum * i;
            }
            return sum;
        }
        /**
         * 求n的階乘之和
         * @param
         */
        public static int facSum(int n){
            int ret = 0;
            for (int i = 1;i <= n; i++){
                ret = ret + Fac(i);
            }
            return ret;
        }
     
        public static void main(String[] args) {
     
            System.out.println(facSum(5));
        }
    }
    1.Java無法通過傳地址的方式交換兩個值的變量,后續會講怎么做
    public class TestDemo {
        public static void swap(int a,int b){//交換兩個變量的值
            int tmp = a;
            a = b;
            b = tmp;
        }
     
        public static void main(String[] args) {
            int a = 10;
            int b = 10;
            System.out.println("交換實參前:"+a+" " +b);
            swap(&a,b);//Java是做不到取地址的,如果想要寫一個函數交換兩個數的的值,只能把a和b的值放到堆上
            System.out.println("交換實參后:"+a+" " +b);
     
        }
    }

    二、方法的重載 

    有些時候我們需要用一個函數同時兼容多種參數的情況, 我們就可以使用到方法重載

    畫圖講解: 

    Java方法如何定義與使用

    方法的名字都叫 add. 但是有的 add 是計算 int 相加, 有的是 double 相加; 有的計算兩個數字相加, 有的是計算三個數 字相加. 同一個方法名字, 提供不同版本的實現, 稱為 方法重載 

    三、方法的使用 

    例題:用函數方式編寫代碼模擬三次登錄場景

       public static void login(){
            int count = 3;
            Scanner scanner = new Scanner(System.in);
            while(count != 0){
                System.out.println("請輸入你的密碼");
                String password = scanner.nextLine();
                if(password.equals("123456")){//equals的返回值是true或者false
                    System.out.println("登錄成功了");
                    break;
                }else{
                    count--;
                    System.out.println("你輸錯密碼了,你還有"+count+"次機會");
     
                }
            }
     
        }
     
        public static void main(String[] args) {
            login();
     
        }

    例題:函數求水仙花數 

     求水仙花數   
    public static void findNum(int n){
     
            for (int i = 1; i <=n; i++) {
                int count = 0;//數字的位數
                int tmp = i;
                while(tmp != 0){
                    count++;
                    tmp = tmp/10;
                }
                tmp = i;
                int sum = 0;
                while(tmp != 0){
                    sum += Math.pow(tmp%10,count);
                    tmp/=10;
                }
                if(sum == i){
                    System.out.println(i);
                }
     
            }
     
        }
     
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            int n = scanner.nextInt();
            findNum(n);
     
        }

    例題:求奇數位于偶數之前 

    調整數組順序使得奇數位于偶數之前,調整之后,不關心大小順序
    public class TestDemo {
     
     
        public static void main(String[] args) {
            int[]arr = {1,2,3,4,5,6,7,8,9};
            int left = 0;
            int right = arr.length-1;
            while(left < right){
                while(left < right && arr[left] % 2 != 0){
                    left++;
                }
                while(left < right && arr[right] % 2== 0){
                    right--;
                }
                int tmp = arr[left];
                arr[left] = arr[right];
                arr[right] = tmp;
            }
            for (int i = 0; i <arr.length ; i++) {
                System.out.print(arr[i]+" ");
     
            }
     
        }
    
    }

    例題: 函數求三個數的最大值

    1.用函數求三個數的最大值
    public class TestDemo {
     
     
     
        public static int Max(int a,int b){
            return a > b? a : b;
     
        }
            public static int Max1(int a,int b,int c){
            return Max(Max(a,b),c);
            }
     
        public static void main(String[] args) {
            System.out.println(Max1(4, 6, 8));
     
        }
     
    }

    關于“Java方法如何定義與使用”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“Java方法如何定義與使用”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    庆云县| 湘乡市| 株洲县| 宁乡县| 公安县| 浑源县| 红原县| 星子县| 比如县| 宝应县| 合山市| 从江县| 康乐县| 河北区| 河津市| 济阳县| 丽江市| 云阳县| 边坝县| 陆河县| 永城市| 蒙阴县| 鄂伦春自治旗| 扎赉特旗| 凤阳县| 孙吴县| 恭城| 中方县| 平邑县| 克拉玛依市| 清水河县| 敖汉旗| 得荣县| 福清市| 离岛区| 秭归县| 迭部县| 新巴尔虎左旗| 汽车| 松溪县| 潍坊市|