Java基礎第4天

程序結構(按執行流程劃分)java

順序結構:總體上程序是順序結構。函數

分支結構:if(若是有else,則必有一個會執行)switch-casespa

循環結構:for while do-while ,重點:嵌套循環虛擬機

方法定義及格式it

簡單的說:方法就是完成特定功能的代碼塊{}編譯

在不少語言裏面都有函數的定義class

函數在Java中被稱爲方法test

返回值類型:用於限定返回值的數據類型,需不須要返回值,須要什麼類型的返回值,徹底取決於業務邏輯,沒有統一規定import

方法名:一個名稱,通常小寫,多個單詞使用駝峯命名,儘可能作到見名知意變量

參數類型 :限定調用方法時傳入參數的數據類型

參數名:是一個變量,接收跳用方法時傳入的參數參數類型和形參名合起來稱爲形參列表

方法體:完成功能的代碼,每次方法被調用,就執行一次這裏面的代碼

return:結束方法以及返回方法指定類型的值,若是方法定義時指定返回值爲void,則return後不能接任何東西,此時的return能夠省略

返回值:程序被return帶回的結果,返回給調用者

自定義方法的位置

類體內不能再方法中再定義方法,或者說方法不能嵌套定義

方法定義和使用的注意事項

1:自定義的方法不調用的話,不會自動執行

2:方法與方法是平級關係,不能嵌套定義

3:方法定義的時候參數之間用逗號隔開

4:方法調用的時候不用再傳遞數據類型,只傳值,或者是變量名便可

5:若是方法有明確的返回值,必定要有return帶回一個同類型值(或者能夠自動向上轉型的返回值)

void類型的方法不能放在打印語句中

void類型的方法不能用於賦值語句中

void類型的方法只能單獨調用

方法重載

在同一個類中,容許存在一個以上的同名方法,只要他們的參數列表(參數個數或者參數類型)不一樣便可,這就叫方法的重載。

若是一個類中存在兩個或者兩個以上同名的方法,可是形參列表不一樣,他們就是方法的重載

特色:與返回值類型無關,只看方法名和參數列表(形參個數,類型)

        在調用時,虛擬機經過參數列表的不一樣來區分同名方法

例子

public static void test(){

     System.out.println("這是不帶參數的test方法「);

}

public static int test(int id){

     System.out.println("這是帶一個參數的test方法」);

     return id;

}

//如下方法只是和上面方法返回值不一樣,系統沒法識別成方法的重載,編譯錯誤

public static String test(int id){

     System.out.printh(「這是帶一個參數的test方法");

     return id+"";

}

自定義方法之間的互相調用

以前使用的自定義方法都是被main方法調用,實際上咱們本身自定義的方法之間一樣能夠互相調用

以下兩個方法,其中個一個就調用來了另外一個方法,這兩個方法在定義的順序上沒有前後要求

public static void  speak(String content){

     sayHi();    //調用另外一個自定義方法

     System.out.println("我想說的是:  "+content);

}

public static void sayHi(){

      System.out.println("Hi");

}

public static void main(String[] args){

      speak("天氣不錯");

自定義兩個方法,一個方法是對打印語句的封裝,形參爲想要打印的內容;另外一個方法是對99乘法口訣表的封裝,形參爲要打印的行數。

要求:在打印99乘法口訣方法之中,調用自定義的打印方法打印出傳入的行數參數,而後再打印99乘法口訣,並在main方法中調用乘法口訣這個方法

import java.utli.Scanner;

class HomeWork{

  public static void main(String[] args){

    Scanner s = new Scanner(System.in);

    System.out.println("請輸入你要打印的行數: ");

    myPrint(s.nextInt());

  }

  public static void sop(String content){

    System.out.println(content);

  }

  public static void myPrint(int n){

    sop("你要打印的行數是: "+n);

    for(int i = 1;i<=n;i++){

      for(int j = 1;j<=i;j++){

         System.out.print(i+"x"+j+"="+i*j+"\t");

      }

      System.out.println();

    }

 } 

}

相關文章
相關標籤/搜索