JAVA入門系統教程(五)基礎文法(3)

來源:互聯網
上載者:User

###基礎文法(3)###

1. 迴圈語句:for / while / do...while

1)for迴圈

格式:for(迴圈變數初始化;迴圈變數條件;迴圈不變數變化){

迴圈操作

執行過程:

<1>執行迴圈變數初始化部分,設定迴圈初始化狀態,此部分在迴圈中只執行一次

<2>進行迴圈條件判斷,若為true則執行迴圈內代碼,false直接退出迴圈

<3>執行迴圈變數變化部分,改變迴圈變數得值,以便進行下一次條件判斷

<4>依次執行迴圈,一直到條件達到語句不成立時即false,退出迴圈

(註:有大括弧的地方不需要加分號,有分號的地方不需要加大括弧)

例題:求和,求出1~100的總和

2)while迴圈

格式: while(判斷條件){

迴圈操作

執行過程:

<1>判斷while後麵條件是否成立

<2>成立時,執行迴圈內操作直至條件不成立停止

例題:連續依次輸入1-5

3)do...while 迴圈

格式:do{

迴圈操作

}while(判斷條件)

執行過程:

<1>先執行一遍迴圈操作,然後判斷迴圈條件是否成立

<2>如果成立繼續執行直至不成立時結束迴圈

例題:計算50以內的偶數和

4)迴圈的嵌套

例題:打出9X9乘法表

ps:continue:停止當前迴圈進入下一次迴圈 、 break:結束迴圈

2. 數組:數組可以理解為一個巨大的盒子,裡面可以按順序存放多個類型相同的資料。

其中元素都可以通過下標來訪問

數組的下標從0開始 即這裡 score[0] = 76 . . . . . . score[3] = 87

數組的初始化:

1)動態初始化:指定數組長度,由系統給數組中的元素賦值

(這裡格式為:資料類型[ ] 數組名稱 = new 數群組類型 [ 指定長度 ] )

2)靜態初始化:指定數組中的元素的值,由系統給數組指定長度

處理數組中的資料:我們可以對賦值後的數組進行操作和處理

我們可以直接建立數組方式,它將聲明數組、分配空間和賦值合并完成

如:int[ ] sc = new int[ ]{5,15,25,35,48,55,38}

數組:length屬性:擷取數組長度

例:錄入一組資料,並且輸出該數組

3. 方法:方法就是用來解決一類問題的代碼的有序組合,即為一個功能模組

文法:存取修飾詞 傳回值類型 方法名(參數列表){

方法體

1) 存取修飾詞:方法允許被訪問的許可權範圍, 可以是 public、protected、private 甚至可以省略 ,其中 public 表示該方法可以被其他任何代碼調用,其他幾種修飾符的使用在後面章節中會詳細講解滴

2)傳回值類型:方法傳回值的類型,如果方法不返回任何值,則傳回值類型指定為 void ;如果方法具有傳回值,則需要指定傳回值的類型,並且在方法體中使用 return 語句傳回值

3)方法名:定義的方法的名字,必須使用合法的標識符

4)參數列表:傳遞給方法的參數列表,參數可以有多個,多個參數間以逗號隔開,每個參數由參數類型和參數名組成,以空格隔開

根據方法是否帶參、是否帶傳回值,可將方法分為四類:

Ø 無參無傳回值方法

Ø 無參帶傳回值方法

Ø 帶參無傳回值方法

Ø 帶參帶傳回值方法

調用方法:
1)單獨調用:沒有具體結果
2)輸出調用:不夠好,將資料寫死,直接輸出的,不能對結果進行一下步的需求
3)賦值調用

例:在上一個例題中,我們增加方法,最佳化排序過程

問題:通過之前所學,我們來做一組較為複雜的程式需求如下

1)輸入一組數組 2)對數組進行輸出 3)對數組進行逆輸出 4)可以篩選出最大與最小數並輸出 5)增加資料的查詢功能 6)利用方法最佳化程式過程

package example;import java.util.Scanner;public class Ex1 {public static void main(String[] args) {@SuppressWarnings("resource")        Scanner sc = new Scanner(System.in);        int[] score = new int[5];        for(int i = 0 ; i<=score.length-1 ; i++) {            System.out.println("請輸入第"+(i+1)+"個數");            int x = sc.nextInt();                    score[i] = x;        }        System.out.print("您輸入的數組為:");                printArray(score);                max(score, 0);                min(score, 0);                nx(score,0);                printArray(score);                where(score);}//遍曆數組方法public static void printArray(int[] score) {for(int x = 0 ; x<=score.length-1 ; x++) {if(x==0) {System.out.print("[ "+score[x]);}else if(x==score.length-1) {System.out.print(" "+score[x]+" ]");    }else {    System.out.print(" "+score[x]);    }}System.out.println("");System.out.println("------------------------");}//輸出最大值方法public static void max(int[] score, int max) {max = score[0];for(int y = 1 ; y<=score.length-1 ; y++) {if (max<score[y]) {max = score[y];}}System.out.println("您輸入的最大值為:"+max);System.out.println("------------------------");}//輸出最小值方法public static void min(int[] score, int min) {min = score[0];for(int y = 1 ; y<=score.length-1 ; y++) {if (min>score[y]) {min = score[y];}}System.out.println("您輸入的最小值為:"+min);System.out.println("------------------------");}//逆序方法public static void nx(int[] score,int temp) {for(int y = 0 ; y<=(score.length-1)/2 ; y++) {temp = score[y];score[y]=score[score.length-1-y];score[score.length-1-y]=temp;}System.out.print("該數組的逆序為:");}//尋找資料方法public static void where(int[] score) {@SuppressWarnings("resource")Scanner sc = new Scanner(System.in);System.out.print("請輸入您要尋找的數:    ");int ex = sc.nextInt();for(int y = 0 ; y<score.length ; y++) {if(ex == score[y]) {System.out.println("您輸入的是第 "+(y+1)+" 個數");break;}else if(ex!=score[0] && ex!=score[1] && ex!=score[2] && ex!=score[3] && ex!=score[4]) {System.out.println("沒有您要找的數");break;}}}}

補:方法之重載

如果同一個類中包含了兩個或兩個以上方法名相同、方法參數的個數、順序或類型不同的方法,則稱為方法的重載,也可稱該方法被重載了。如下所示 4 個方法名稱都為 show ,但方法的參數有所不同,因此都屬於方法的重載:

如何區分調用的是哪個重載方法呢?

當調用被重載的方法時, Java 會根據參數的個數和類型來判斷應該調用哪個重載方法,參數完全符合的方法將被執行

此時結果為:

PS:判斷方法重載的依據

1、 必須是在同一個類中
2、 方法名相同
3、 方法參數的個數、順序或類型不同

4、 與方法的修飾符或傳回值沒有關係

####END####

相關文章:

JAVA入門系統教程(三)基礎文法(1)

JAVA入門系統教程(四)基礎文法(2)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.