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

Java打印數(shù)組的三種方法整理

 更新時間:2022年06月20日 16:11:30   作者:超能大眼萌  
許多學(xué)編程專業(yè)的同學(xué)面試的時候,考官都會問到Java如何打印數(shù)組這樣的問題,下面這篇文章主要給大家介紹了關(guān)于Java打印數(shù)組的三種方法,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下

在Java開發(fā)中有時候需要打印數(shù)組信息,下面是整理歸納的幾種打印數(shù)組方法:(如下)

①、使用 for 循環(huán)打印

最簡單的方法,逐個遍歷打印

注:如果是多維數(shù)組的話,使用多層 for 循環(huán)嵌套就可以打印了。

一維數(shù)組:

public static void main(String[] args) {
    int[] arr = new int[]{0,1,2,3,4,5,6,7,8,9};
    // 普通for循環(huán)打印
    System.out.println("普通for循環(huán)打印:");
    for (int i = 0; i < arr.length; i++) {
        System.out.print(arr[i] + "、");
    }
    System.out.println(); // 換行
    // 增強for循環(huán)打印
    System.out.println("增強for循環(huán)打印:");
    for (int num : arr) {
        System.out.print(num + "、");
    }
}

二維數(shù)組:

public static void main(String[] args) {
      int[][] arr = new int[][] {{1,2},{2,3},{3,4},{4,5},{5,6}};// 二維數(shù)組
        for (int i = 0; i < arr.length; i++) {
            for (int j = 0; j < arr[i].length; j++) {
               System.out.print(arr[i][j] + "、");
         }
     }
 }

②、使用 Arrays.toString() 或 Arrays.deepToString()

對于一維數(shù)組,可以使用Arrays.toString()方法,它支持將任意類型的數(shù)組轉(zhuǎn)換為字符串,代碼如下:

public static void main(String[] args) {
    int[] arr = new int[]{0,1,2,3,4,5,6,7,8,9};
    //使用Array.toString()
    System.out.println(Arrays.toString(arr));
}

但對于多維數(shù)組,用 Arrays.toString() 就會出現(xiàn)和直接打印數(shù)組變量名時一樣的問題,打印出來的是地址值。這時候,就需要使用 Arrays.deepToString() 方法了,如下圖:

Java不會去使用多維數(shù)組,最多用到二維,因為Java會用到面向?qū)ο?/p>

public static void main(String[] args) {
    int[][] arr = new int[][] {{1,2},{2,3},{3,4},{4,5},{5,6}};// 二維數(shù)組
    //使用Arrays.deepToString()
    System.out.println(Arrays.deepToString(arr));
}

一維數(shù)組用 Arrays.toString() 方法,多維數(shù)組用 Arrays.deepToString() 方法

③、使用 Arrays.asList()

該方法是將數(shù)組轉(zhuǎn)化為list

以下幾點需要注意:

(1)該方法不適用于基本數(shù)據(jù)類型

(byte,short,int,long,float,double,boolean),但可以用基本數(shù)據(jù)類型的封裝類。比如int的封裝類Integer.(Object 數(shù)組也是有效)

(2)該方法將數(shù)組與列表鏈接起來,當(dāng)更新其中之一時,另一個自動更新

(3)不支持add和remove方法

    public static void main(String[] args) {
        int[] arr = new int[]{0,1,2,3,4,5,6,7,8,9};
        System.out.println(Arrays.asList(arr));
        //打印結(jié)果:[[I@140e19d]
    }
    public static void main(String[] args) {
        Integer[] arr = new Integer[]{0,1,2,3,4,5,6,7,8,9};
        System.out.println(Arrays.asList(arr));
        //打印結(jié)果:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    }

補充:java byte數(shù)組打印

十六位數(shù)組打印輸出

簡單的方式

Byte[] bs = {0x0F, 0x1F, 0x2F, 0x3F, 0x4F, 0x5F, 0x6F};
System.out.println(Arrays.toString(bs));

// 打印輸出結(jié)果
[15, 31, 47, 63, 79, 95, 111]

更加通用一點的方式

byte[] bs = hexStringToByteArray("e04fd020ea3a6910a2d808002b30309d");
System.out.println(Arrays.toString(bs));

/**
 * 將String轉(zhuǎn)換為byte[]
 * @param s String
 * @return byte[]
 */
public static byte[] hexStringToByteArray(String s) {
	int len = s.length();
	byte[] data = new byte[len / 2];
	for (int i = 0; i < len; i += 2) {
	data[i / 2] = (byte) ((Character.digit(s.charAt(i), 16) << 4) + Character.digit(s.charAt(i + 1), 16));
	}
	return data;
}

// 打印輸出結(jié)果
[-32, 79, -48, 32, -22, 58, 105, 16, -94, -40, 8, 0, 43, 48, 48, -99]

普通數(shù)組打印輸出

byte[] bs = "你好,這是一段字符串!".getBytes();
System.out.println(Arrays.toString(bs));

// 打印輸出結(jié)果
[-28, -67, -96, -27, -91, -67, -17, -68, -116, -24, -65, -103, -26, -104, -81, -28, -72, -128, -26, -82, -75, -27, -83, -105, -25, -84, -90, -28, -72, -78, -17, -68, -127]

總結(jié)

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

相關(guān)文章

  • java實現(xiàn)五子棋大戰(zhàn)

    java實現(xiàn)五子棋大戰(zhàn)

    這篇文章主要為大家詳細介紹了java實現(xiàn)五子棋大戰(zhàn),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Java重寫(Override)與重載(Overload)區(qū)別原理解析

    Java重寫(Override)與重載(Overload)區(qū)別原理解析

    這篇文章主要介紹了Java重寫(Override)與重載(Overload)區(qū)別原理解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-02-02
  • java 判斷兩個時間段是否重疊的案例

    java 判斷兩個時間段是否重疊的案例

    這篇文章主要介紹了java 判斷兩個時間段是否重疊的案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • Springboot中如何自定義監(jiān)聽器

    Springboot中如何自定義監(jiān)聽器

    這篇文章主要介紹了Springboot中自定義監(jiān)聽器,自定義事件需要繼承ApplicationEvent類,并添加一個構(gòu)造函數(shù),用于接收事件源對象,本文通過示例代碼給大家介紹的非常詳細,感興趣的朋友一起看看吧
    2024-07-07
  • Java多線程的實現(xiàn)方式詳解

    Java多線程的實現(xiàn)方式詳解

    這篇文章主要介紹了Java多線程的實現(xiàn)方式詳解,線程就是進程中的單個順序控制流,也可以理解成是一條執(zhí)行路徑,java中之所以有多線程機制,目的就是為了提高程序的處理效率,需要的朋友可以參考下
    2023-08-08
  • 一文讀懂a(chǎn)va中的Volatile關(guān)鍵字使用

    一文讀懂a(chǎn)va中的Volatile關(guān)鍵字使用

    volatile關(guān)鍵字的作用保證了變量的可見性(visibility)。被volatile關(guān)鍵字修飾的變量,如果值發(fā)生了變更,其他線程立馬可見,避免出現(xiàn)臟讀的現(xiàn)象。這篇文章主要介紹了ava中的Volatile關(guān)鍵字使用,需要的朋友可以參考下
    2020-03-03
  • 解決java連接zookeeper很慢的問題

    解決java連接zookeeper很慢的問題

    這篇文章主要介紹了解決java連接zookeeper很慢的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • JAVA記住密碼功能的實現(xiàn)代碼

    JAVA記住密碼功能的實現(xiàn)代碼

    這篇文章主要介紹了JAVA記住密碼功能的實現(xiàn)代碼,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-01-01
  • 解決springCache配置中踩的坑

    解決springCache配置中踩的坑

    這篇文章主要介紹了解決springCache配置中踩的坑,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • SpringBoot整合Echarts實現(xiàn)用戶人數(shù)和性別展示功能(詳細步驟)

    SpringBoot整合Echarts實現(xiàn)用戶人數(shù)和性別展示功能(詳細步驟)

    這篇文章主要介紹了SpringBoot整合Echarts實現(xiàn)用戶人數(shù)和性別展示,通過數(shù)據(jù)庫設(shè)計、實現(xiàn)數(shù)據(jù)訪問層、業(yè)務(wù)邏輯層和控制層的代碼編寫,以及前端頁面的開發(fā),本文詳細地介紹了SpringBoot整合Echarts的實現(xiàn)步驟和代碼,需要的朋友可以參考下
    2023-05-05

最新評論

永和县| 镇远县| 沐川县| 密山市| 砚山县| 玉田县| 临颍县| 台山市| 梁平县| 稻城县| 康定县| 新化县| 衡山县| 武隆县| 泗洪县| 宁阳县| 青田县| 黄冈市| 桓台县| 伊春市| 嘉黎县| 柞水县| 靖西县| 宁津县| 略阳县| 县级市| 兴宁市| 句容市| 连南| 荥经县| 怀集县| 吉木萨尔县| 洪洞县| 汝南县| 安徽省| 蓬安县| 林西县| 蒙山县| 晋城| 师宗县| 温州市|