JavaSE03 Java基礎(chǔ)語(yǔ)法(下)

一、流程控制

1、順序結(jié)構(gòu)

程序默認(rèn)的結(jié)構(gòu),自上而下的執(zhí)行

2、選擇結(jié)構(gòu)

(1)if語(yǔ)句

(1)if 單選擇結(jié)構(gòu)
(2)if-else 雙選擇機(jī)構(gòu)
(3)if-else if-else 多選擇結(jié)構(gòu)

(2)Swich語(yǔ)句

switch(變量){
?? case 值:要執(zhí)行的語(yǔ)句;break;
?? …
??default:要執(zhí)行的語(yǔ)句;
??}

3、循環(huán)結(jié)構(gòu)

(1)while循環(huán)
(2)do-While循環(huán)
(3)for循環(huán)
(4)增強(qiáng)for循環(huán)

break:作用于switch ,和循環(huán)語(yǔ)句,用于跳出,或者稱為結(jié)束。
continue:只作用于循環(huán)結(jié)構(gòu),繼續(xù)循環(huán)用的。結(jié)束本次循環(huán),繼續(xù)下次循環(huán)。
return:結(jié)束方法的運(yùn)行。

二、方法

1、方法的定義

訪問(wèn)權(quán)限符 返回值  方法名(參數(shù)列表){
    方法體
}

(1)沒(méi)有具體的返回值時(shí),返回的返回值類型用void關(guān)鍵字表示。
(2)如果函數(shù)的返回值類型是void時(shí),return語(yǔ)句可以省略不寫(xiě)的,系統(tǒng)會(huì)幫你自動(dòng)加上。
(3)方法的名稱,避免使用到j(luò)ava關(guān)鍵字,并且首字母小寫(xiě),命名時(shí)使用駝峰命名法
駱駝式命名法(Camel-Case)又稱駝峰式命名法,是電腦程式編寫(xiě)時(shí)的一套命名規(guī)則(慣例)。正如它的名稱CamelCase所表示的那樣,是指混合使用大小寫(xiě)字母來(lái)構(gòu)成變量和函數(shù)的名字。程序員們?yōu)榱俗约旱拇a能更容易的在同行之間交流,所以多采取統(tǒng)一的可讀性比較好的命名方式。

2、訪問(wèn)修飾符

image.png
2.1 public
  • (1)定義:public是公共的,被public所修飾的成員可以在任何類中都能被訪問(wèn)到。
  • (2)作用域:public能用來(lái)修飾類,在一個(gè)java源文件中只能有一個(gè)類被聲明為public,而且一旦有一個(gè)類為public,那這個(gè)java源文件的文件名就必須要和這個(gè)被public所修飾的類的類名相同,否則編譯不能通過(guò)。public用來(lái)修飾類中成員(變量和方法),被public所修飾的成員可以在任何類中都能被訪問(wèn)到。通過(guò)操作該類的對(duì)象能隨意訪問(wèn)public成員。public在類的繼承上的體現(xiàn),被public所修飾的成員能被所有的子類繼承下來(lái)。
2.2 protected
  • (1)定義:protected是受保護(hù)的,受到該類所在的包所保護(hù)。
  • (2)作用域:被protected所修飾的成員會(huì)被位于同一package中的所有類訪問(wèn)到。同時(shí),被protected所修飾的成員也能被該類的所有子類繼承下來(lái)。(注意:這里是指同一個(gè)package或者不同的package中的子類都能訪問(wèn))
2.3 default
  • (1)定義:default是默認(rèn),缺省的,即在成員的前面不寫(xiě)任何的訪問(wèn)修飾符的時(shí)候,默認(rèn)就是友好的。所謂友好的,是對(duì)同一package的類友好。
  • (2)作用域:同一package中的所有類都能訪問(wèn)。被friendly所修飾的成員只能被該類所在同一個(gè)package中的子類所繼承下來(lái)。(也就是說(shuō)只有在同一個(gè)package中的子類才能訪問(wèn)到父類中friendly修飾的成員)
2.4 private
  • (1)定義:private是私有的,即只能在當(dāng)前類中被訪問(wèn)到,它的作用域最小。
  • (2)作用域:private可以修飾數(shù)據(jù)成員,構(gòu)造方法,方法成員,不能修飾類(此處指外部類,不考慮內(nèi)部類)。被private修飾的成員,只能在定義它們的類中使用,在其他類中不能調(diào)用。

3、方法的調(diào)用

(1)類名.方法()
(2)對(duì)象.方法()

4、方法重載

在一個(gè)類中,如果出現(xiàn)了兩個(gè)或者兩個(gè)以上的同名方法,只要它們的參數(shù)的個(gè)數(shù)不同,或者參數(shù)的類型不同,即可稱之為該方法重載了。

5、遞歸

遞歸,即自己調(diào)用自己(自身調(diào)用、遞歸出口)

遞歸算法是一種直接或間接地調(diào)用自身的算法。在計(jì)算機(jī)編寫(xiě)程序中,遞歸算法對(duì)解決一大類問(wèn)題是十分有效的,它往往使算法的描述簡(jiǎn)潔而且易于理解。

6、可變參數(shù)

(1)當(dāng)參數(shù)的個(gè)數(shù)不定時(shí),可以使用可變參數(shù)
(2)可變參數(shù)的寫(xiě)法:int…a 前面為參數(shù)類型,中間加三個(gè)點(diǎn),后面為參數(shù)名
(3)使用規(guī)則:
可變參數(shù)只能位于參數(shù)列表的最后一個(gè)
可變參數(shù)有且只有一個(gè)
(4)可變參數(shù)的原理為數(shù)組,傳入?yún)?shù)時(shí),根據(jù)傳入的參數(shù)自動(dòng)生成匹配的數(shù)組類型,數(shù)組長(zhǎng)度等于傳入的參數(shù)個(gè)數(shù),數(shù)組元素為傳入的實(shí)參

public class Text2 {
    public static void main(String[] args) {
        int sum = addSum(1,2,3,4,5,6,7,8,9);
        System.out.println(sum);
    }

    private static int addSum(int ...a) {
        int add = 0;
        //將數(shù)組元素(即傳入的參數(shù))求和
        for (int i = 0; i < a.length; i++) {
            add += a[i];
        }
        return add;
    }
}

三、數(shù)組

1、數(shù)組的定義

用于存儲(chǔ)同一類型數(shù)據(jù)的一個(gè)容器。好處:可以對(duì)該容器中的數(shù)據(jù)進(jìn)行編號(hào),從0開(kāi)始。數(shù)組用于封裝數(shù)據(jù),就是一個(gè)具體的實(shí)體。
(1)元素類型[] 變量名 = new 元素類型[元素1,元素2…];
(2)元素類型[] 變量名 = {元素1,元素2…};
(3)必須是同一個(gè)類型

2、數(shù)組的使用

(1)通過(guò)數(shù)組下標(biāo)取值
(2)ArrayIndexOutOfBounds 數(shù)組越界
(3)for循環(huán)遍歷

3、二維數(shù)組

(1)二維數(shù)組可以看作是特殊的一維數(shù)組,在聲明二維數(shù)組的同時(shí)用new為二維數(shù)組分配內(nèi)存空間,然后才能訪問(wèn)每個(gè)元素
(2)數(shù)組類型[][] 數(shù)組名 = new 數(shù)組類型[一維數(shù)組的個(gè)數(shù)][每一個(gè)一維數(shù)組中元素的個(gè)數(shù)];

4、Arrays工具類

Java中為我們提供了數(shù)組相關(guān)的一個(gè)工具類,使用該工具類可以方便的輸出編輯數(shù)組。
工具類只有靜態(tài)方法。常見(jiàn)的有:

(1)toString()

將數(shù)組轉(zhuǎn)化為字符串,有多個(gè)重載方法,可以支持boolean、float、int、long、short對(duì)象數(shù)組。

(2) sort()

將數(shù)組升序排列,是一個(gè)改進(jìn)的快速排序,比起傳統(tǒng)的冒泡,選擇排序速度更快

(3)binarySearch(int[] a,int key)

二分法查找數(shù)組,返回值為int型

5、排序算法

常見(jiàn)的排序算法有:


image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容