最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

關(guān)于Java?SE數(shù)組的深入理解

 更新時(shí)間:2022年09月27日 09:28:27   作者:程序猿教你打籃球  
數(shù)組是相同類(lèi)型數(shù)據(jù)的有序集合,數(shù)組描述的是相同類(lèi)型的若干個(gè)數(shù)據(jù),按照一定的先后次序排列組合而成,下面這篇文章主要給大家介紹了關(guān)于Java?SE數(shù)組的深入理解,需要的朋友可以參考下

1、數(shù)組的基本概念

1.1 我們?yōu)槭裁葱枰獢?shù)組?

假設(shè)說(shuō)我們要存每個(gè)同學(xué)的期末考試總成績(jī),如果我們還不知道數(shù)組的話(huà),那我們是不是得新建100個(gè)變量,而且賦值和打印也相當(dāng)?shù)穆闊?nbsp;而且我們發(fā)現(xiàn)成績(jī)的數(shù)據(jù)類(lèi)型都是一樣的,所以就會(huì)有數(shù)組這個(gè)概念,數(shù)組即是相同類(lèi)型元素的集合,而且是一塊連續(xù)的存儲(chǔ)空間,每個(gè)空間都有編號(hào),也就是我們口中常說(shuō)的數(shù)組下標(biāo)。而且使用數(shù)組,也可以是代碼變得更簡(jiǎn)化,方便的進(jìn)行排序查找等,現(xiàn)在,我們就來(lái)進(jìn)入數(shù)組的學(xué)習(xí)把:

1.2 數(shù)組的創(chuàng)建與初始化

我們這期是由淺到深講解的,所以在前邊有一些不理解的問(wèn)題,請(qǐng)堅(jiān)持往后看,會(huì)得到解決的。

在Java中對(duì)數(shù)組的創(chuàng)建并初始化有兩種方式,分別是靜態(tài)初始化和動(dòng)態(tài)初始化:

public static void arrayInit() {
        int[] array1 = { 1,2,3,4,5,6,7,8,9,10 }; //靜態(tài)初始化
        int[] array2 = new int[] { 1,2,3,4,5,6,7,8,9,10 }; //靜態(tài)初始化
    }

這兩種寫(xiě)法有什么不同呢?第一種雖然省去了 new int[ ],但是在編譯的時(shí)候還是會(huì)還原成第二種方式,這兩種寫(xiě)法本質(zhì)上沒(méi)有區(qū)別,都是在JVM棧上開(kāi)辟一個(gè) array1和array2元素,同時(shí)也會(huì)在堆上開(kāi)辟兩個(gè)一維數(shù)組,這兩個(gè)變量分別存這這兩個(gè)數(shù)組的地址,當(dāng)然,這里你不懂沒(méi)關(guān)系,后面我們也會(huì)畫(huà)圖一一講解到,你只需要知道,這兩種定義并初始化的方式只是寫(xiě)法上的不同就可以了!

那定義了數(shù)組但是不初始化呢?

public static void arrayInit() {
        int[] array3 = new int[10]; //動(dòng)態(tài)初始化
        int[] array4 = null;
    }

如果是上面這種創(chuàng)建但是不初始化,array3 里面會(huì)默認(rèn)初始化成0,也就是說(shuō),如果數(shù)組中存儲(chǔ)的元素為基本類(lèi)型,默認(rèn)值為基本類(lèi)型對(duì)對(duì)應(yīng)的默認(rèn)值0,像 array4 賦值成 null 這種情況,就可以理解成這個(gè)數(shù)組沒(méi)有引用任何對(duì)象,這個(gè)地方聽(tīng)不懂沒(méi)關(guān)系,往后看就能懂了。

類(lèi)型默認(rèn)值
byte

0

short0
int0
long0L
float0.0f
double0.0
char/u0000
booleanfalse

不知道學(xué)過(guò)C語(yǔ)言的小伙伴還記不記得,C語(yǔ)言數(shù)組是可以不完全初始化的,比如說(shuō)你一個(gè)數(shù)組5個(gè)元素,你只初始化前三個(gè)元素,在C語(yǔ)言中后續(xù)未初始化的元素會(huì)默認(rèn)補(bǔ)0,但是在Java中你就算完全初始化了,如果你指定了元素個(gè)數(shù)的話(huà),也會(huì)報(bào)錯(cuò),只有在使用 new int[10],動(dòng)態(tài)初始化的時(shí)候才能寫(xiě)明數(shù)組元素個(gè)數(shù),你們也可以下來(lái)自己試試。

在Java的數(shù)組中,我們有幾點(diǎn)需要注意:

  • 數(shù)組 { } 里面的元素類(lèi)型一定要跟 [ ] 前面的類(lèi)型保持一致
  • 靜態(tài)初始化的時(shí)候不能指定長(zhǎng)度,動(dòng)態(tài)初始化的時(shí)候 new int[10]需要指定長(zhǎng)度 
  • 雖然沒(méi)有指定數(shù)組長(zhǎng)度,但是編譯器在編譯的時(shí)候會(huì)根據(jù) { } 里面的元素個(gè)數(shù)來(lái)確定數(shù)組的長(zhǎng)度
  • 雖然Java數(shù)組可以寫(xiě)成跟C語(yǔ)言一樣的寫(xiě)法 int array[ ],但不推薦,因?yàn)檫@樣語(yǔ)義不明確!
  • new int[n] ,[ ]中可以是變量

這里有小伙伴就有個(gè)小問(wèn)題了,如果我定義了但是沒(méi)有初始化,我能不能在下面重新賦值呢?

public static void arrayInit() {
        int[] array3;
        array3 = { 1,2,3,4,5 };
    }

這樣是絕對(duì)不可以的,雖然你現(xiàn)在可能不是很理解,但我們前面有提過(guò),數(shù)組變量 array3 里面放的是地址,這個(gè)在下面我們會(huì)細(xì)講。這里你知道即可。

那如何正確的在定義之后初始化呢?或者重新賦值呢?

public static void arrayInit() {
        int[] array1;
        array1 = new int[10];
        
        int[] array2;
        array2 = new int[]{ 1,2,3,4,5 };   
    }

像如上代碼這樣是ok的,本質(zhì)上其實(shí)就是在堆區(qū)創(chuàng)建了一個(gè)新對(duì)象,這個(gè)我們還是在后面細(xì)講,這里讓你們先見(jiàn)一見(jiàn),為后面細(xì)節(jié)學(xué)習(xí)作鋪墊。

1.3 數(shù)組的使用

數(shù)組是定義好了,我們?nèi)绾稳ナ褂盟??在前面我們提到過(guò),數(shù)組是一塊連續(xù)的內(nèi)存空間,都有對(duì)應(yīng)的編號(hào),也就是下標(biāo),我們就可以通過(guò)下標(biāo)的方式快速訪問(wèn)數(shù)組的任意位置的元素:

public static void main(String[] args) {
 
        int[] array = { 1,2,3,4,5 };
        array[2] = 88;
        System.out.println(array[2]);
    }

同時(shí)也可以對(duì)下標(biāo)的值進(jìn)行修改,但是這里我們要注意幾點(diǎn),數(shù)組的下標(biāo)是從 0 開(kāi)始的,所以最后一個(gè)元素下標(biāo)應(yīng)該是 n-1,也就是Java中大部分采用的都是左閉右開(kāi)的,即:[ 0,n )

如果我們下標(biāo)越界訪問(wèn)了,不用擔(dān)心,程序會(huì)直接剖出下標(biāo)越界異常,我們根據(jù)報(bào)錯(cuò)提示去找對(duì)應(yīng)的位置即可。

1.4 數(shù)組的遍歷 

在Java中對(duì)數(shù)組其實(shí)有三種遍歷打印的方式,每一種的情況都會(huì)講明優(yōu)缺點(diǎn),接著往下看:

for 循環(huán)打?。?/strong>

public class TestDemo {
    public static void main(String[] args) {
        int[] array = { 1,2,3,4,5 };
        for (int i = 0; i < array.length; i++) {
            System.out.print(array[i] + " ");
        }
        System.out.println();
    }
}

這種方式是很常規(guī)的通過(guò)下標(biāo)遍歷訪問(wèn)的方式,對(duì)于數(shù)組的長(zhǎng)度我們可以通過(guò),數(shù)組對(duì)象.length 來(lái)獲取數(shù)組的長(zhǎng)度。

for-each 循環(huán)打?。?/strong>

public class TestDemo {
    public static void main(String[] args) {
        int[] array = { 1,2,3,4,5 };
        for (int a : array) {
            System.out.print(a + " ");
        }
        System.out.println();
    }
}

這種打印方式呢,在 for 循環(huán)里冒號(hào)的左邊必須是你要打印的數(shù)組里元素的類(lèi)型定義的變量,右邊則是你要打印數(shù)組的數(shù)組名,下面就可以通過(guò)你定義的變量進(jìn)行打印了。for-each是for循環(huán)的另一種使用方式,他能在代碼上更簡(jiǎn)潔,也可以避免循環(huán)條件和更新語(yǔ)句的書(shū)寫(xiě)錯(cuò)誤,但是這樣也有缺陷,比如說(shuō)這種方式并不能拿到數(shù)組的下標(biāo)。

Arrays工具類(lèi)打印

public class TestDemo {
    public static void main(String[] args) {
        int[] array = { 1,2,3,4,5 };
        String ret = Arrays.toString(array); //既然返回的是字符串,我們就用字符串類(lèi)型來(lái)接收
        System.out.println(ret);
        System.out.println(Arrays.toString(array)); //既然有返回值,那我們也可以直接鏈?zhǔn)皆L問(wèn)
    }
}

首先我們要介紹下Arrays,他是在 java.util 包下的一個(gè)工具類(lèi),里面定義了很多對(duì)數(shù)組的操作方法,而 Arrays.toString 他的作用是把數(shù)組轉(zhuǎn)換成字符串并返回,所以嚴(yán)格意義上它并不是遍歷數(shù)組,只是把數(shù)組轉(zhuǎn)化成對(duì)應(yīng)的字符串而已。

以上三種方式各有優(yōu)缺點(diǎn),初學(xué)者結(jié)合實(shí)際情況作應(yīng)用

2、引用類(lèi)型數(shù)組的深入講解

2.1 簡(jiǎn)單了解 JVM 的內(nèi)存分布

Java的程序需要運(yùn)行在虛擬機(jī)上的,如果對(duì)于內(nèi)存中的數(shù)據(jù)隨意存儲(chǔ)的話(huà),那以后對(duì)內(nèi)存管理起來(lái)將會(huì)是很麻煩的一件事,所以JVM也對(duì)所使用的內(nèi)存按照不同的功能進(jìn)行了劃分:

但是我們今天只重點(diǎn)關(guān)心堆和虛擬機(jī)棧這兩塊空間,在后續(xù)學(xué)習(xí)中會(huì)依次詳細(xì)介紹這里面的內(nèi)容:

虛擬機(jī)棧:與方法調(diào)用相關(guān)的一些信息,每個(gè)方法在執(zhí)行的時(shí)候都會(huì)先創(chuàng)建一個(gè)棧幀,棧幀中包含:局部變量,操作數(shù)棧,動(dòng)態(tài)鏈接,返回地址,以及一些其他的信息,保存的都是與方法執(zhí)行相關(guān)的一些信息,比如:局部變量,當(dāng)方法運(yùn)行結(jié)束了后,棧幀也被銷(xiāo)毀,即棧幀中保存的數(shù)據(jù)也被銷(xiāo)毀了

堆:它是JVM管理的最大內(nèi)存區(qū)域,使用 new 創(chuàng)建的對(duì)象都是在堆上保存的,堆是隨著程序的開(kāi)始而創(chuàng)建,隨著程序的退出而銷(xiāo)毀,堆中的數(shù)據(jù)只要還有在使用,就不會(huì)被銷(xiāo)毀。

2.2 基本類(lèi)型變量與引用類(lèi)型變量的區(qū)別

對(duì)這個(gè)理解特別重要,很關(guān)系到你后面進(jìn)行學(xué)習(xí),首先我們要區(qū)別這個(gè)兩個(gè)的區(qū)別,先說(shuō)基本類(lèi)型變量,這種變量中直接存放的是所對(duì)應(yīng)的值,而引用類(lèi)型創(chuàng)建的變量,一般稱(chēng)為對(duì)象的引用,這種變量里存儲(chǔ)的是對(duì)象所在空間的地址,下面我們用一小段代碼,并且畫(huà)圖讓大家理解的更清楚:

public class TestDemo {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        int[] array = { 1,2,3,4,5 };
    }
}

其實(shí)看到這張圖,相信大家就能很好的理解了,其實(shí)我們引用變量并不是存儲(chǔ)了對(duì)象本身,只是存儲(chǔ)了對(duì)象的其實(shí)地址,那我們的 array 只是存儲(chǔ)了在堆中開(kāi)辟的一維數(shù)組的地址!并沒(méi)有把整個(gè)數(shù)組都保存在變量中!通過(guò)該對(duì)象的地址,引用變量就可以去操作這個(gè)對(duì)象了!

2.3 通過(guò)方法更深刻理解引用變量

有了上面的認(rèn)識(shí),我們就要來(lái)理解下面這兩個(gè)方法的作用了,相信你看完會(huì)有更深刻的認(rèn)識(shí):

是不是結(jié)果可能跟你想得有點(diǎn)不一樣呢?不用擔(dān)心,我們來(lái)一個(gè)個(gè)分析下:

首先我們執(zhí)行的是 func1 我們知道 array 變量中存的是一個(gè)對(duì)象的地址,那么通過(guò)傳參給 func1 的 arr1,首先要建立棧幀,把 array 存的地址拷貝到 arr1 當(dāng)中,這樣一來(lái)就相當(dāng)于 arr1 也指向了那個(gè)變量,但是我們又 new 了一個(gè)對(duì)象,并把新對(duì)象的地址賦值給了 arr1,相當(dāng)于 arr1  原來(lái)存放的地址已經(jīng)被替換了,也就說(shuō) arr1 指向了一個(gè)新的對(duì)象,因?yàn)橹皇前?array 存的地址拷貝給了 arr1 所以執(zhí)行完 func1 這個(gè)方法之后,array 并不會(huì)受任何影響,當(dāng)方法結(jié)束,arr2 變量銷(xiāo)毀,因?yàn)閍rr2 銷(xiāo)毀之后沒(méi)有變量接著引用在 func1 中 new 的新對(duì)象,所以此時(shí)新的對(duì)象就被 JVM 回收了!

當(dāng)我們執(zhí)行完 func1 時(shí),就是我們說(shuō)的結(jié)果,所以 array 的值不受任何影響!

我們接著再來(lái)看執(zhí)行 func2 之后的結(jié)果,首先前半部分與 func1 一樣,都是傳遞的 array 指向?qū)ο蟮牡刂?,但?func2 里面語(yǔ)句是直接對(duì) arr2 中對(duì)象的地址進(jìn)行下標(biāo)訪問(wèn),修改了 [1] 下標(biāo)處的值,因?yàn)楸举|(zhì) array 和 arr2 引用的都是同一個(gè)對(duì)象,當(dāng) arr2 修改了對(duì)象的值,所以當(dāng)函數(shù)結(jié)束后接著打印 array 指向?qū)ο蟮闹悼隙ㄒ脖恍薷牧?!方法結(jié)束,arr2 被銷(xiāo)毀,但是 arr2 指向的對(duì)象仍然被 array 指向著,所以JVM不會(huì)回收此時(shí)的對(duì)象!

看到這,你肯定有了更深刻的理解,前面有疑問(wèn)的地方肯定得到了解決,所謂的 "引用" 本質(zhì)上只是存了一個(gè)地址,Java將數(shù)組設(shè)定成引用類(lèi)型,這樣后續(xù)進(jìn)行數(shù)組傳參,其實(shí)只是將數(shù)組的地址傳入到形參當(dāng)中,這樣就可以避免對(duì)整個(gè)數(shù)組的拷貝!

在我們目前認(rèn)識(shí)中,如果對(duì)象沒(méi)有被引用,則會(huì)自動(dòng)回收,所以不用考慮內(nèi)存泄漏的問(wèn)題 

2.4 數(shù)組作為函數(shù)返回值

假設(shè)這里我們有一個(gè)題,需要實(shí)現(xiàn)一個(gè)方法,這個(gè)方法需要獲取斐波那契數(shù)列的前 n 項(xiàng),需要返回一個(gè)數(shù)組回來(lái),本質(zhì)其實(shí)就是返回?cái)?shù)組的地址,如何實(shí)現(xiàn)呢?

public static int[] fib(int n) {
        if (n <= 0) {
            return null;
        }
        int[] array = new int[n];
        array[0] = array[1] = 1;
        for (int i = 2; i < n; i++) {
            array[i] = array[i - 1] + array[i - 2];
        }
        return array;
    }
    public static void main(String[] args) {
        int[] array = fib(8);
        System.out.println(Arrays.toString(array));
    }

當(dāng)然這個(gè)方法如果 n 為1 就會(huì)越界,這個(gè)下來(lái)可以自己優(yōu)化下,來(lái)到這里我們就來(lái)介紹下Arrays這個(gè)工具類(lèi)里面的一些方法了: 像一些將數(shù)組轉(zhuǎn)換成字符串,數(shù)組二分查找,數(shù)組排序等等,可以下來(lái)查閱下幫助手冊(cè),這里我就不細(xì)說(shuō)了,交給大家自己去擴(kuò)展了,如果以后用到,我會(huì)進(jìn)行說(shuō)明。

3、二維數(shù)組

3.1 二維數(shù)組的概念和內(nèi)存布局 

這里我們一定要有一個(gè)概念,二維數(shù)組是一個(gè)特殊的一維數(shù)組,如何理解呢?用文字來(lái)說(shuō),二維數(shù)組的每個(gè)元素是一維數(shù)組,也就是說(shuō),二維數(shù)組的每個(gè)元素里面放的是一維數(shù)組的地址!

相信聽(tīng)完上面的話(huà),大家可能不是很理解,那我們就定義一個(gè)二維數(shù)組,并畫(huà)圖:

public static void main(String[] args) {
        int[][] array = { {1,2,3}, {4,5,6} };
    }

這里就很清晰明了了,圖中也能看到,二維數(shù)組本質(zhì)就是一個(gè)一維數(shù)組,只不過(guò)這個(gè)一維數(shù)組的每個(gè)元素存的是地址而已!

3.2 二維數(shù)組的定義和初始化 

 當(dāng)然,二維數(shù)組和一維數(shù)組一樣,同樣的三種定義方式:

int[][] array1 = { {1,2,3}, {4,5,6} }; //兩行三列的二維數(shù)組
int[][] array2 = new int[][]{ {1,2,3}, {4,5,6} };
int[][] array3 = new int[2][3];

如果只是單純的 int[][] array; 這樣數(shù)組里面沒(méi)有任何引用對(duì)象,并不能直接使用未引用對(duì)象的數(shù)組,如果不引用最好置null

3.3 二維數(shù)組遍歷

for 循環(huán)打印:

public class TestDemo {
    public static void main(String[] args) {
        int[][] array1 = { {1,2,3}, {4,5,6} }; //兩行三列的二維數(shù)組
        for (int i = 0; i < array1.length; i++) {
            for (int j = 0; j < array1[i].length; j++) {
                System.out.print(array1[i][j] + " ");
            }
            System.out.println();
        }
        System.out.println();
    }
}

這里第一個(gè) for 里面的長(zhǎng)度求的是 array1.length,因?yàn)樗旧砭褪且粋€(gè)特殊一維數(shù)組,這樣求出的就是它的行,第二個(gè)for array1[i].length,自然求得就是每一行一維數(shù)組長(zhǎng)度了

for-each 循環(huán)打?。?/strong>

public class TestDemo {
    public static void main(String[] args) {
        int[][] array1 = { {1,2,3}, {4,5,6} }; //兩行三列的二維數(shù)組
        for (int[] arr : array1) { //二維數(shù)組的每個(gè)元素是一維數(shù)組,所以每個(gè)元素的類(lèi)型是int[]
            for (int a : arr) { //arr是一維數(shù)組,每個(gè)數(shù)組的元素的int
                System.out.print(a + " ");
            }
            System.out.println();
        }
    }
}

Arrays 工具類(lèi)有個(gè)方法也可以打印二維數(shù)組,是Arrays.deepToString,這個(gè)方法也是打印二維數(shù)組的但只能在一行顯示,感興趣的可以下來(lái)自己實(shí)驗(yàn)下。

3.4 不規(guī)則的二維數(shù)組

在Java中,二維數(shù)組的列可以省略,也就是把二維數(shù)組看成一個(gè)特殊的一維數(shù)組的每個(gè)元素指向的一維數(shù)組是可以元素個(gè)數(shù)不同的,如何理解這句話(huà)呢?我們還是一樣通過(guò)一小段并且以畫(huà)圖的形式給大家講解:

int[][] array = new int[2][];
array[0] = new int[3];
array[1] = new int[2];

當(dāng)然,他的遍歷方法是跟普通二維數(shù)組一樣的, 這里我就不多說(shuō),自己摸索,實(shí)在不懂可以問(wèn)下博主。

總結(jié)

到此這篇關(guān)于關(guān)于Java SE數(shù)組的文章就介紹到這了,更多相關(guān)Java SE數(shù)組理解內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java二分查找算法實(shí)例詳解

    Java二分查找算法實(shí)例詳解

    在本篇文章里小編給大家分享總結(jié)的是一篇關(guān)于Java二分查找算法實(shí)例詳解內(nèi)容,對(duì)此有興趣的朋友們可以跟著學(xué)習(xí)下。
    2022-11-11
  • java編寫(xiě)貪吃蛇小游戲

    java編寫(xiě)貪吃蛇小游戲

    貪吃蛇是經(jīng)典手機(jī)游戲,既簡(jiǎn)單又耐玩。通過(guò)控制蛇頭方向吃蛋,使得蛇變長(zhǎng),從而獲得積分。今天我們就來(lái)用java來(lái)實(shí)現(xiàn)下貪吃蛇小游戲,有需要的小伙伴可以參考下
    2015-03-03
  • SpringBoot中優(yōu)化if-else語(yǔ)句的七種方法

    SpringBoot中優(yōu)化if-else語(yǔ)句的七種方法

    if-else語(yǔ)句是控制流程的基本工具,但過(guò)度使用會(huì)使代碼變得復(fù)雜且難以維護(hù),在SpringBoot , SpringCloud項(xiàng)目中,優(yōu)化if-else結(jié)構(gòu)變得尤為重要,本文將深入探討七種策略,旨在減少SpringBoot , SpringCloud項(xiàng)目中 if-else的使用,需要的朋友可以參考下
    2024-07-07
  • Java元注解Retention代碼示例介紹

    Java元注解Retention代碼示例介紹

    注解@Retention可以用來(lái)修飾注解,是注解的注解,稱(chēng)為元注解。Retention注解有一個(gè)屬性value,是RetentionPolicy類(lèi)型的,Enum?RetentionPolicy是一個(gè)枚舉類(lèi)型,這個(gè)枚舉決定了Retention注解應(yīng)該如何去保持,也可理解為Rentention?搭配?RententionPolicy使用
    2022-08-08
  • 使用java一維數(shù)組模擬壓棧彈棧

    使用java一維數(shù)組模擬壓棧彈棧

    這篇文章主要介紹了如何使用java一維數(shù)組模擬壓棧彈棧,需要的朋友可以參考下
    2021-04-04
  • Java中enum枚舉類(lèi)型的基本特性詳解

    Java中enum枚舉類(lèi)型的基本特性詳解

    這篇文章主要介紹了Java中enum枚舉類(lèi)型的基本特性詳解,enum關(guān)鍵字用于創(chuàng)建一個(gè)新類(lèi)型,其中包含一組數(shù)量有限的命名變量,并視這些變量為常規(guī)程序組件,實(shí)踐表明這是一種非常有用的類(lèi)型,需要的朋友可以參考下
    2023-11-11
  • Java 通過(guò)反射給實(shí)體類(lèi)賦值操作

    Java 通過(guò)反射給實(shí)體類(lèi)賦值操作

    這篇文章主要介紹了Java 通過(guò)反射給實(shí)體類(lèi)賦值操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-08-08
  • Java輸入輸出語(yǔ)句舉例詳解(通俗易懂!)

    Java輸入輸出語(yǔ)句舉例詳解(通俗易懂!)

    這篇文章主要給大家介紹了關(guān)于Java輸入輸出語(yǔ)句的相關(guān)資料,作為一種常用的編程語(yǔ)言,Java提供了多種輸入輸出的方式,用于與用戶(hù)進(jìn)行數(shù)據(jù)交互或處理文件數(shù)據(jù),需要的朋友可以參考下
    2023-10-10
  • Java打亂數(shù)組元素簡(jiǎn)單代碼例子

    Java打亂數(shù)組元素簡(jiǎn)單代碼例子

    在Java編程中,我們經(jīng)常需要對(duì)數(shù)組進(jìn)行亂序操作(即將數(shù)組中的元素隨機(jī)打亂順序),這篇文章主要給大家介紹了關(guān)于Java打亂數(shù)組元素的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-03-03
  • java實(shí)現(xiàn)ModbusCRC16校驗(yàn)的示例代碼

    java實(shí)現(xiàn)ModbusCRC16校驗(yàn)的示例代碼

    本文介紹了使用Java實(shí)現(xiàn)ModbusCRC16校驗(yàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-11-11

最新評(píng)論

曲水县| 峨山| 哈巴河县| 安西县| 甘南县| 台东县| 侯马市| 宝坻区| 涿州市| 措勤县| 平舆县| 淮北市| 呼玛县| 静宁县| 鹿邑县| 安西县| 秦皇岛市| 罗平县| 谢通门县| 固镇县| 贵州省| 邯郸县| 如东县| 万载县| 临湘市| 江津市| 凤山县| 衡东县| 昆山市| 新民市| 新巴尔虎右旗| 衡水市| 阳泉市| 衢州市| 涿州市| 姚安县| 叙永县| 大同市| 顺昌县| 子洲县| 潼关县|