Java中的數組:你需要知道什麼?

已發表: 2020-11-30

目錄

介紹

看過java的原始數據類型之後,很多人都會有一個疑問,我們可以在磁盤中順序存儲多個條目嗎? java中的數組將是我們查詢的答案。

數組是一種數據結構,它按順序存儲相同數據類型的條目。 數組減少了代碼的重複並使其變得簡單。 當我們想要存儲相當多的值時,比如 50 個值,然後將每個值分配給一個變量,這與代碼的簡單性相矛盾。

數組克服了這個問題,我們可以將所有這些值分配給單個數組,但請記住,數組只能存儲相同數據類型的值。

讓我們開始吧!

聲明和初始化

要使用數組,我們需要聲明它,並且我們必須指定要存儲在數組中的變量的數據類型。 與所有編程語言類似,java 也有聲明要遵循的語法。

int [] 數組; //type1

整數數組[]; //type2

如上面的代碼片段所示,我們可以通過兩種方式聲明一個數組。 “Type2”是一種從 c/c++ 借來的聲明數組的傳統方式。 一旦我們完成聲明一個數組,我們需要創建一個新數組,這可以通過使用 new 關鍵字來完成。

創建數組的語法如下“data_type[] array = new array[array_length]”。 我們需要在創建時指定數組的長度,創建後無法增加大小。

通過指定長度創建數組後,它只是將一個空數組分配給該變量,我們可以稍後將值推送到其中。 讓我們來看看它的代碼。

整數[] 數組=整數[ 10 ]; //聲明和

//創建一個新數組

//賦值

數組[ 0 ] = 1 ;

數組[ 1 ] = 5 ;

數組[ 8 ] = 9 ;

//方法二

int [] 數組= { 1 , 2 , 3 , 4 , 5 };

系統 出來 打印( int [ 0 ]);

最初,整數數組中的所有位置都用零填充,我們可以通過在方括號中提及索引來用我們的值覆蓋這些值。 在上面的代碼片段中,“方法 2”是另一種創建數組的方法。

循環遍歷數組

我們可以使用 for 循環或 while 循環來循環數組,每次迭代都會增加索引。 請記住,訪問索引大於數組長度的元素將引發異常。

int [] 數組= { 1 , 2 , 3 , 4 , 5 };

for ( int i = 0 ;i < 5 ;i ++ ){

系統 出來 打印(數組[i] + );

}

上面的代碼片段打印“1 2 3 4 5”作為輸出。

還有另一個有趣的循環稱為“for-each 循環”,用於迭代循環。

浮動[] 數組= { 1.2f , 2.3f , 3.4f , 4.5f , 5.6f };

for (浮動f :數組){

系統 出來 打印(f + );

}

上面的代碼片段顯示了 for-each 循環的實現,其中變量 float 在每次迭代時將值更改為數組中的下一個條目。 此實現不需要任何索引變量。

結帳: Java 中的完整 ArrayList:你需要知道的

預定義方法

java 中的 Arrays 類帶有許多預定義的方法,這些方法被推廣到所有原始數據類型。 例如,如果我想對一個包含所有整數的數組和一個包含所有浮點數的數組進行排序,那麼我可以對這兩種情況使用相同的方法。

讓我們來看看一些預定義的數組方法。

  • 種類()

此方法按升序對給定數組進行排序並更新已排序的數組,正如已經討論過的,此方法對 java 中的所有原始數據類型都進行了重載。 這個公共方法不返回任何東西,因為它是 void 返回類型。

Arrays.sort(array_name) 是要遵循的語法。

浮動[] 數組= { 2.2f , 1.3f , 5.4f , 3.5f , 7.6f };

數組 排序(數組);

for (浮動f :數組){

系統 出來 打印(f + );

}

上面的代碼片段將按預期打印“1.3 2.2 3.5 5.4 7.6”。

  • 充滿()

這個方法用我們在函數調用中傳遞的變量填充數組。 此方法替換了循環遍歷數組並將值分配給該位置的簡單實現。

Arrays.fill(array_name, value) 是要遵循的語法。

浮動[] 數組= { 2.2f , 1.3f , 5.4f , 3.5f , 7.6f };

數組 填充(數組, 9.8f );

for (浮動f :數組){

系統 出來 打印(f + );

}

上面的代碼片段將用 9.8 替換數組中的所有條目。

  • 等於()

此方法需要兩個數組作為參數,如果數組 1 中的所有元素都等於數組 2 中的所有元素,則返回 true。請記住,如果兩個數組的長度不同,或者元素的順序不同,則此方法返回 false .

Arrays.equals(array_1, array_2) 是要遵循的語法。

浮動[] array1 = { 2.2f , 1.3f , 5.4f , 3.5f , 7.6f };

浮動[] array2 = { 2.2f , 1.3f , 5.4f , 3.5f , 7.6f };

浮動[] array3 = { 2.2f , 1.3f , 3.5f , 5.4f , 7.6f };

系統 出來 println(數組等於(array1,array2)); //第1行

系統 出來 println(數組等於(array1,array3)); //第2行

上面的代碼段將為 line1 打印 True,為 line2 打印 False

要進一步了解 java 中的各種數組方法,請查看他們的文檔

在方法中訪問數組

如果我們不能在函數中使用數組,那麼數組將毫無用處。 但是Java從不讓你失望,我們可以傳遞一個數組,返回一個數組,並在java函數中使用一個數組。

讓我們來看看它們。

當我們想要將數組傳遞給 Java 函數時,我們需要在函數聲明中指定數組的數據類型。 這幾乎類似於將原始數據類型傳遞給函數。 同樣,當我們返回一個數組時,我們需要以數組為返回類型聲明該數組。

公共靜態浮點[] 排序(浮點[] 數組){

數組 排序(數組);

返回數組;

}

公共靜態無效主要(字符串參數[]){

浮動[] array1 = { 2.2f , 1.3f , 5.4f , 3.5f , 7.6f };

浮動[]數組 2 =排序(數組 1);

對於浮動f array2)

系統 出來 打印(f + );

}

上面的代碼片段按預期打印“1.3 2.2 3.5 5.4 7.6”。

閱讀: MATLAB 數據類型:您需要知道的一切

結論

現在您已經了解了 java 中的數組。 了解數組的初始化和聲明。 探索了遍歷數組的各種方法。 瀏覽了一些預定義的數組方法並在方法中訪問數組。 您在 java 中擁有一個有用的數據結構,現在就開始使用它吧!

如果您有興趣了解有關 Java、OOP 和全棧軟件開發的更多信息,請查看 upGrad 和 IIIT-B 的全棧軟件開發 PG 文憑,該文憑專為在職專業人士設計,提供 500 多個小時的嚴格培訓,9 + 項目和任務、IIIT-B 校友身份、實用的實踐頂點項目和頂級公司的工作協助。

為未來的職業做準備

行業值得信賴的學習 - 行業認可的認證。
了解更多