Java中Arrays.toString ()打印二维数组及Array数组的常用操作
生活随笔
收集整理的這篇文章主要介紹了
Java中Arrays.toString ()打印二维数组及Array数组的常用操作
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1.Java中Arrays.toString ()
已知打印一維數(shù)組的API為System.out.println ( Arrays.toString ();,其參數(shù)為數(shù)組名或數(shù)組指針,其支持的數(shù)據(jù)類型有很多,如:int[]、char[]、byte[]等。
import java.util.Arrays;public class ArrayPrint {public static void main(String[] args){//第一種方式:int a[][]={{1,2,3},{4,5,6}};System.out.println("a:"+Arrays.toString(a));int b[][]={{1,2,3},{4,5,6}};System.out.println("b:"+Arrays.deepToString(b));//第二種方式;//int[][] ints = new int[4][2]; //ints[i][j] =__; //分別賦值//第三種方式:第二維的長(zhǎng)度可以動(dòng)態(tài)申請(qǐng)int[][] arr3 = new int[5][]; //五行的長(zhǎng)度for(int i=0; i<arr3.length; ++i){ arr3[i]=new int[i+1]; //列的長(zhǎng)度每次都變化。每次都要重新申請(qǐng)空間(長(zhǎng)度)for(int j=0; j<arr3[i].length; ++j){arr3[i][j]= i+j; System.out.println( "arr3[i][j]:"+ arr3[i][j]);}System.out.println( "arr3[i][j]:"+ Arrays.toString(arr3[i]) );}}}打印結(jié)果:
a:[[I@7852e922, [I@4e25154f] b:[[1, 2, 3], [4, 5, 6]] arr3[i][j]:0 arr3[i][j]:[0] arr3[i][j]:1 arr3[i][j]:2 arr3[i][j]:[1, 2] arr3[i][j]:2 arr3[i][j]:3 arr3[i][j]:4 arr3[i][j]:[2, 3, 4] arr3[i][j]:3 arr3[i][j]:4 arr3[i][j]:5 arr3[i][j]:6 arr3[i][j]:[3, 4, 5, 6] arr3[i][j]:4 arr3[i][j]:5 arr3[i][j]:6 arr3[i][j]:7 arr3[i][j]:8 arr3[i][j]:[4, 5, 6, 7, 8]a:[[I@7852e922, [I@4e25154f]這種輸出結(jié)果是因?yàn)?#xff1a;
因?yàn)閏是一個(gè)二維數(shù)組。相當(dāng)于一個(gè)長(zhǎng)度為2的數(shù)組,但是這個(gè)數(shù)組的元素是數(shù)組。
當(dāng)執(zhí)行Arrays.toString的時(shí)候相當(dāng)于遍歷數(shù)組,并且輸出數(shù)組的元素,但是這個(gè)數(shù)組的元素是數(shù)組,所以這里輸出的是數(shù)組元素的地址。
2. Java中對(duì)Array數(shù)組的常用操作
import java.util.*; public class ArrayPrint {public static void main(String[] args){//聲明數(shù)組String [] arr;int arr1[];//初始化數(shù)組int arr2[]=new int[]{1,2,3,4,5};String[] array1={"馬超","馬云","關(guān)羽","劉備","張飛"};String[] array2=new String[]{"黃渤","張藝興","孫紅雷","小豬","牙哥","黃磊"}; String[] array=new String[5];//查看數(shù)組的長(zhǎng)度int length=array1.length;System.out.println("length: "+array1.length);//輸出數(shù)組System.out.println(array1); //結(jié)果:[Ljava.lang.String;@32f22097System.out.println("arr2: "+Arrays.toString(arr2));//遍歷數(shù)組for (int i = 0; i < array1.length; i++) {System.out.println(array1[i]);}//int數(shù)組轉(zhuǎn)成string數(shù)組int[] array3={1,2,3,4,5,6,7,8,9,0};String arrStrings=Arrays.toString(array3);System.out.println("arrStrings:"+arrStrings);//從array中創(chuàng)建arraylistArrayList <String> arrayList=new ArrayList<String>(Arrays.asList(array1));System.out.println("arrayList:"+arrayList);//數(shù)組中是否包含某一個(gè)值String a="馬超";if (Arrays.asList(array1).contains(a)) {System.out.println("馬超在這里");}//將數(shù)組轉(zhuǎn)成set集合Set<String> set=new HashSet<String>(Arrays.asList(array2));System.out.println("set:"+set);//將數(shù)組轉(zhuǎn)成list集合List<String> list_1=new ArrayList<String>();for (int i = 0; i < array2.length; i++) {list_1.add(array2[i]);}System.out.println("list_1:"+list_1);String[] arrStrings2={"1","2","3"};List<String > list2=Arrays.asList(arrStrings2);System.out.println("list2:"+list2);//Arrays.fill()填充數(shù)組int[] arr3=new int[5];Arrays.fill(arr3, 10); //將數(shù)組全部填充10System.out.println("arr3:"+arr3);for (int i = 0; i < arr3.length; i++) {System.out.println("arr3[i]:"+arr3[i]);}//數(shù)組排序int[] arr4 = {3, 7, 2, 1, 9};Arrays.sort(arr4);System.out.println("arr4:"+arr4);for (int i = 0; i < arr4.length; i++) {System.out.println("arr4[i]:"+arr4[i]);}int[] arr5 = {3, 7, 2, 1, 9,3,45,7,8,8,3,2,65,34,5};Arrays.sort(arr5, 1, 4); //從第幾個(gè)到第幾個(gè)之間的進(jìn)行排序for (int i = 0; i < arr5.length; i++) {System.out.println("arr5[i]:"+arr5[i]);}//復(fù)制數(shù)組int[] arr6 = {3, 7, 2, 1};int[] arr7=Arrays.copyOf(arr6, 10); //指定新數(shù)組的長(zhǎng)度int[] arr8=Arrays.copyOfRange(arr6, 1, 3); //只復(fù)制從索引[1]到索引[3]之間的元素(不包括索引[3]的元素)for (int i = 0; i < arr8.length; i++) {System.out.println(arr8[i]);}//比較兩個(gè)數(shù)組int[] arr9 = {1, 2, 3, 4,5,6,7,8,9,0};boolean arr10=Arrays.equals(arr6, arr9);System.out.println(arr10);//去重復(fù)//利用set的特性int[] arr11 = {1, 2, 3, 4,5,6,7,8,9,0,3,2,4,5,6,7,4,32,2,1,1,4,6,3};Set<Integer> set2=new HashSet<Integer>();for (int i = 0; i < arr11.length; i++) {set2.add(arr11[i]);}System.out.println(set2);int[] arr12 = new int[set2.size()];int j=0;for (Integer i:set2) {arr12[j++]=i;}System.out.println(Arrays.toString(arr12)); } }運(yùn)行:
length: 5 [Ljava.lang.String;@7852e922 arr2: [1, 2, 3, 4, 5] 馬超 馬云 關(guān)羽 劉備 張飛 arrStrings:[1, 2, 3, 4, 5, 6, 7, 8, 9, 0] arrayList:[馬超, 馬云, 關(guān)羽, 劉備, 張飛] 馬超在這里 set:[小豬, 牙哥, 黃渤, 黃磊, 孫紅雷, 張藝興] list_1:[黃渤, 張藝興, 孫紅雷, 小豬, 牙哥, 黃磊] list2:[1, 2, 3] arr3:[I@4e25154f arr3[i]:10 arr3[i]:10 arr3[i]:10 arr3[i]:10 arr3[i]:10 arr4:[I@70dea4e arr4[i]:1 arr4[i]:2 arr4[i]:3 arr4[i]:7 arr4[i]:9 arr5[i]:3 arr5[i]:1 arr5[i]:2 arr5[i]:7 arr5[i]:9 arr5[i]:3 arr5[i]:45 arr5[i]:7 arr5[i]:8 arr5[i]:8 arr5[i]:3 arr5[i]:2 arr5[i]:65 arr5[i]:34 arr5[i]:5 7 2 false [0, 32, 1, 2, 3, 4, 5, 6, 7, 8, 9] [0, 32, 1, 2, 3, 4, 5, 6, 7, 8, 9]參考:
https://www.cnblogs.com/epeter/p/5664926.html
總結(jié)
以上是生活随笔為你收集整理的Java中Arrays.toString ()打印二维数组及Array数组的常用操作的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 国际直接投资的动机是什么
- 下一篇: 紫银转债是什么股票