亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中數組怎么定義使用

發布時間:2022-03-16 14:13:50 來源:億速云 閱讀:211 作者:小新 欄目:開發技術

這篇文章主要為大家展示了“Java中數組怎么定義使用”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Java中數組怎么定義使用”這篇文章吧。

    一、數組的基本用法

    1.什么是數組

    數組:存儲一組相同數據類型的數據的集合。

    2.定義數組 

    int[] :int類型數組 

    double[] :double類型數組

    通過類型就可以定義變量,比如:

    int[] array,array就是這個類型的變量,這個變量是存儲一組相同數據的變量。

    三種數組定義的方式:

    Java中數組怎么定義使用

    第一種:

    int[] array = {1,2,3,4,5,6};定義一個數組且初始化 

    雖然沒寫new,但實際上也是一個對象

    注意事項:

    int[10] array =  {1,2,3,4,5,6};寫法錯誤,int[] 屬于類型,中括號里面不能加任何的數字,相當于在這里破壞了它的類型。

    第二種:

    int[] array2 = new int[3];

    Java中數組怎么定義使用

     定義數組未初始化

    第三種:

    int[] array3 = new int[]{1,2,3,4,5,6};

    Java中數組怎么定義使用

    定義且初始化 

    三種當中用的最多的就是第一種

    3.數組的使用

    獲取數組長度:

    Java中數組怎么定義使用

    Java里面可以直接通過數組名array.length 求出當前數組的長度

    訪問數組元素:

    Java中數組怎么定義使用

    訪問數組下標為4的元素 

    越界訪問數組元素:

    Java中數組怎么定義使用

     Java語言越界直接報錯

    更改數組元素:

    Java中數組怎么定義使用

     通過數組名中括號的方式,不僅僅可以訪問下標的內容,也可以往下標里面寫一些數據 

    打印數組: 

    第一種:(for循環)

    Java中數組怎么定義使用

     第二種:(增強for循環,for each循環)

    Java中數組怎么定義使用

    for循環和for each循環的區別:

    for循環是可以拿到下標的,

    for each循環是拿不到下標的,更多的是用于集合中

    第三種:借助Java的操作數組工具類 Arrays

    Java中數組怎么定義使用

    二、數組作為方法的參數

    基本用法

    JVM簡單介紹

    Java中數組怎么定義使用

    Java中數組怎么定義使用

     局部變量在內存中的儲存:

    Java中數組怎么定義使用

    引用不指向對象寫法:

    Java中數組怎么定義使用

    這個引用不指向任何的對象

    Java中數組怎么定義使用

    一個引用能不能同時指向多個對象嗎? 

    Java中數組怎么定義使用

    對于這個代碼來說只能指向一個對象,存一個對象的地址。最終只保存了最后一個對象的地址 

    數組作為方法的參數傳遞的過程:

    Java中數組怎么定義使用

    求解打印結果:

    前兩種求解:

    Java中數組怎么定義使用

    fun2打印結果:

    Java中數組怎么定義使用

    分析例子:下圖代表什么 

    Java中數組怎么定義使用

    代表array2這個引用,指向了array1這個引用指向的對象。

    下圖就代表了上面例子的意思:

    Java中數組怎么定義使用

    注意事項:

    引用指向引用這句話 是錯誤的,引用只能指向對象

    引用一定在棧上嗎?

    不一定,一個變量在不在棧上,是你變量的性質決定的,如果你就是一個局部變量,一定是在棧上的。如果不是,例如,實例成員變量那就不一定就是在棧上的。

    三、數組練習題

    1.交換兩個變量的值

    public class TestDemo {
        public static void swap(int[] array){
            int tmp = array[0];
            array[0] = array[1];
            array[1] = tmp;
     
        }
        public static void main(String[] args) {
            int[] array = {10,20};
            System.out.println("交換前: "+array[0]+" "+array[1]);
            swap(array);
            System.out.println("交換后: "+array[0]+" "+array[1]);
        }

    打印結果:

    Java中數組怎么定義使用

    2.寫一個方法, 將數組中的每個元素都 * 2 

     /**
         * 在原來的數組上擴大2倍
         * @param array
         */
        public static void enlarge(int[] array){
            for (int i = 0; i <array.length ; i++) {
                array[i] = array[i]*2;
            }
     
        }
     
        public static void main(String[] args) {
            int[] array = {1,2,3,4,5,6,7};
            enlarge(array);
            System.out.println(Arrays.toString(array));
        }

    打印結果:

    Java中數組怎么定義使用

    把原來數組擴大2倍的值放在一個新的數組中

    /**
         * 把原來數組擴大2倍的值放在一個新的數組中
         * @param array
         * @return
         */
        public static int[] func(int[] array) {
            int[] ret = new int[array.length];
            for (int i = 0; i < array.length; i++) {
                ret[i] = array[i] * 2;
            }
            return ret;
        }
     
        public static void main(String[] args) {
            int[] array = {1,2,3,4,5,6,7};
           int[] ret =  func(array);
            System.out.println(Arrays.toString(ret));
        }

    3.模擬實現tostring函數

    public static String myToString(int[] array){
            String str = "[";
     
            for (int i = 0; i <array.length ; i++) {
                str = str+array[i];
                if(i != array.length-1){
                    str+= ",";
                }
            }
            str= str + "]";
            return str;
        }
     
        public static void main(String[] args) {
            int[] array = {1,2,3,4,5,6,7};
           String str =  myToString(array);
            System.out.println(str);
        }

    打印結果:

    Java中數組怎么定義使用

    4.找數組中的最大元素 

    public static int maxNum(int[] array){
            if(array == null) return -1;
            if (array.length == 0) return -1;
            int max = array[0];
            for (int i = 1; i <array.length ; i++) {
                if(max < array[i]){
                    max = array[i];
     
                }
            }
            return max;
        }
     
        public static void main(String[] args) {
            int[] array = {12,8,14,26,5,7,8};
            int max = maxNum(array);
            System.out.println(max);
        }

    打印結果:

    Java中數組怎么定義使用

    5.查找數組中指定元素(順序查找) 

       public static int findNum(int[] array,int key){
            for (int i = 0; i <array.length ; i++) {
                if(array[i] == key){
                    return i;
                }
            }
            return -1;
        }
     
        public static void main(String[] args) {
            int[] array = {2,4,5,6,11,7,8,9};
            System.out.println(findNum(array, 7));
     
        }

    打印結果:

    Java中數組怎么定義使用

    6.查找數組中指定元素(二分查找) 

    二分查找的必要條件是必須有序的數列
        public static int binarySearch(int[] array,int key){
            int left = 0;
            int right = array.length-1;
            while(left <= right){
                int mid = (left+right)/2;
                if(array[mid] > key){
                    right = mid - 1;
                }else if(array[mid] < key){
                    left = left + 1;
                }else{
                    return mid;
                }
     
            }
            return -1;
        }
     
        public static void main(String[] args) {
            int[] array = {12,14,15,16,18,23};
            System.out.println(binarySearch(array, 15));
        }

    打印結果:

    Java中數組怎么定義使用

    以上是“Java中數組怎么定義使用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    江陵县| 喀喇| 崇文区| 日土县| 双牌县| 寻甸| 丰都县| 咸宁市| 屏东县| 东城区| 砀山县| 新干县| 怀集县| 新安县| 海丰县| 繁昌县| 栖霞市| 宝应县| 公主岭市| 盘锦市| 海晏县| 庄浪县| 盐源县| 淮阳县| 南靖县| 吴桥县| 浪卡子县| 临颍县| 博野县| 简阳市| 东宁县| 建水县| 新郑市| 姚安县| 宁陕县| 肥城市| 连州市| 长武县| 乌拉特中旗| 鹰潭市| 黑水县|