1. 程式人生 > >Java學習筆記十:Java的數組以及操作數組

Java學習筆記十:Java的數組以及操作數組

div 逗號 相同 之間 因此 jpg 對數 詳細 數組

Java的數組以及操作數組

一:什麽是數組;

  數組可以理解為是一個巨大的“盒子”,裏面可以按順序存放多個類型相同的數據,比如可以定義 int 型的數組 scores 存儲 4 名學生的成績

技術分享圖片

  數組中的元素都可以通過下標來訪問,下標從 0 開始。例如,可以通過 scores[0] 獲取數組中的第一個元素 76 ,scores[2] 就可以取到第三個元素 92

二:如何使用 Java 中的數組;

Java 中操作數組只需要四個步驟:

1、 聲明數組

語法: 數據類型[ ] 數組名;

或者 數據類型 數組名[ ];

其中,數組名可以是任意合法的變量名,如:

技術分享圖片

2、 分配空間

簡單地說,就是指定數組中最多可存儲多少個元素

語法: 數組名 = new 數據類型 [ 數組長度 ];

其中,數組長度就是數組中能存放元素的個數,如:

技術分享圖片

我們也可以將上面的兩個步驟合並,在聲明數組的同時為它分配空間,如:

技術分享圖片

3、 賦值

分配空間後就可以向數組中放數據了,數組中元素都是通過下標來訪問的,例如向 scores 數組中存放學生成績

技術分享圖片

4、 處理數組中數據

我們可以對賦值後的數組進行操作和處理,如獲取並輸出數組中元素的值

技術分享圖片

在 Java 中還提供了另外一種直接創建數組的方式,它將聲明數組、分配空間和賦值合並完成,如

技術分享圖片

它等價於:

技術分享圖片

三:使用循環操作 Java 中的數組;

實際開發中我們經常使用循環控制數組成員的操作。如:

技術分享圖片

代碼如下:

public class HelloWorld {
    public static void main(String args[]){
        
        //定義一個數組
        int[] scores={70,80,90,100};
        //length為scores數組的長度
        for(int i=0;i<scores.length;i++){
            System.out.println("數據中第"+(i+1)+"個元素的值是:"+scores[i]);
        }
    
    }
    
}

運行結果為:

技術分享圖片

註:

1、 數組下標從 0 開始。因此 scores[3] ,表示數組中的第 4 個元素,而並非第 3 個元素

2、 數組下標的範圍是 0 至 數組長度-1 ,如果越界訪問,就會報錯。如:

技術分享圖片

運行時會報如下錯誤:技術分享圖片

  上面錯誤信息的意思是數組下標超過範圍,即數組訪問越界。在上面的代碼中創建一個長度為 2 的數組,因此數組下標範圍是 0 到 1 ,而程序中下標出現了 2 ,即 scores[2] ,超過了範圍,造成數組訪問越界。

四:使用 Arrays 類操作 Java 中的數組;

  Arrays 類是 Java 中提供的一個工具類,在 java.util 包中。該類中包含了一些方法用來直接操作數組,比如可直接實現數組的排序、搜索等(關於類和方法的相關內容在後面的章節中會詳細講解滴~~)。

Arrays 中常用的方法:

1、 排序

語法: Arrays.sort(數組名);

可以使用 sort( ) 方法實現對數組的排序,只要將數組名放在 sort( ) 方法的括號中,就可以完成對該數組的排序(按升序排列),如:

技術分享圖片

運行結果:

技術分享圖片

2、 將數組轉換為字符串

語法: Arrays.toString(數組名);

  可以使用 toString( ) 方法將一個數組轉換成字符串,該方法按順序把多個數組元素連接在一起,多個元素之間使用逗號和空格隔開,如:

技術分享圖片

運行結果為:

輸出數組nums中的元素:[25,7,126,53,14,86]

五:使用 foreach 操作數組;

  foreach 並不是 Java 中的關鍵字,是 for 語句的特殊簡化版本,在遍歷數組、集合時, foreach 更簡單便捷。從英文字面意思理解 foreach 也就是“ for 每一個”的意思,那麽到底怎麽使用 foreach 語句呢?

語法:

技術分享圖片

我們分別使用 for 和 foreach 語句來遍歷數組

代碼如下:

public class HelloWorld {
    public static void main(String args[]){
        
        String[] hobbys ={"love","you","i love you"};
        System.out.println("***使用for循環輸出數據中的數據***");
        for(int i=0;i<hobbys.length;i++){
            System.out.println(hobbys[i]);
        }
        System.out.println();
        System.out.println("***使用fpreach循環輸出數據中的元素***");
        for(String hobby : hobbys){
            System.out.println(hobby);
        }
    }
    
}

運行結果為:

技術分享圖片

所以 foreach在遍歷數組上是非常方便的

六:Java 中的二維數組;

  所謂二維數組,可以簡單的理解為是一種“特殊”的一維數組,它的每個數組空間中保存的是一個一維數組。

那麽如何使用二維數組呢,步驟如下:

1、 聲明數組並分配空間

技術分享圖片

或者

技術分享圖片

如:

技術分享圖片

2、 賦值

二維數組的賦值,和一維數組類似,可以通過下標來逐個賦值,註意索引從 0 開始

技術分享圖片

也可以在聲明數組的同時為其賦值

技術分享圖片

如:

技術分享圖片

3、 處理數組

二維數組的訪問和輸出同一維數組一樣,只是多了一個下標而已。在循環輸出時,需要裏面再內嵌一個循環,即使用二重循環來輸出二維數組中的每一個元素。如:

技術分享圖片

運行結果:

技術分享圖片

需要了解的:在定義二維數組時也可以只指定行的個數,然後再為每一行分別指定列的個數。如果每行的列數不同,則創建的是不規則的二維數組,如下所示:

技術分享圖片

運行結果為:

技術分享圖片

Java學習筆記十:Java的數組以及操作數組