1.Java中Arrays.toString ()

已知打印一维数组的API为System.out.println ( Arrays.toString ();,其参数为数组名或数组指针,其支持的数据类型有很多,如: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] =__; //分别赋值//第三种方式:第二维的长度可以动态申请int[][] arr3 = new int[5][];       //五行的长度for(int i=0; i<arr3.length; ++i){         arr3[i]=new int[i+1];         //列的长度每次都变化。每次都要重新申请空间(长度)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]) );}}}

打印结果:

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]这种输出结果是因为:
因为c是一个二维数组。相当于一个长度为2的数组,但是这个数组的元素是数组。

当执行Arrays.toString的时候相当于遍历数组,并且输出数组的元素,但是这个数组的元素是数组,所以这里输出的是数组元素的地址。

2. Java中对Array数组的常用操作

import java.util.*;
public class ArrayPrint {public static void main(String[] args){//声明数组String [] arr;int arr1[];//初始化数组int arr2[]=new int[]{1,2,3,4,5};String[] array1={"马超","马云","关羽","刘备","张飞"};String[] array2=new String[]{"黄渤","张艺兴","孙红雷","小猪","牙哥","黄磊"};      String[] array=new String[5];//查看数组的长度int length=array1.length;System.out.println("length:  "+array1.length);//输出数组System.out.println(array1);     //结果:[Ljava.lang.String;@32f22097System.out.println("arr2:  "+Arrays.toString(arr2));//遍历数组for (int i = 0; i < array1.length; i++) {System.out.println(array1[i]);}//int数组转成string数组int[]  array3={1,2,3,4,5,6,7,8,9,0};String arrStrings=Arrays.toString(array3);System.out.println("arrStrings:"+arrStrings);//从array中创建arraylistArrayList <String> arrayList=new ArrayList<String>(Arrays.asList(array1));System.out.println("arrayList:"+arrayList);//数组中是否包含某一个值String a="马超";if (Arrays.asList(array1).contains(a)) {System.out.println("马超在这里");}//将数组转成set集合Set<String> set=new HashSet<String>(Arrays.asList(array2));System.out.println("set:"+set);//将数组转成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()填充数组int[] arr3=new int[5];Arrays.fill(arr3, 10);  //将数组全部填充10System.out.println("arr3:"+arr3);for (int i = 0; i < arr3.length; i++) {System.out.println("arr3[i]:"+arr3[i]);}//数组排序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);  //从第几个到第几个之间的进行排序for (int i = 0; i < arr5.length; i++) {System.out.println("arr5[i]:"+arr5[i]);}//复制数组int[] arr6 = {3, 7, 2, 1};int[] arr7=Arrays.copyOf(arr6, 10);  //指定新数组的长度int[] arr8=Arrays.copyOfRange(arr6, 1, 3); //只复制从索引[1]到索引[3]之间的元素(不包括索引[3]的元素)for (int i = 0; i < arr8.length; i++) {System.out.println(arr8[i]);}//比较两个数组int[] arr9 = {1, 2, 3, 4,5,6,7,8,9,0};boolean arr10=Arrays.equals(arr6, arr9);System.out.println(arr10);//去重复//利用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));
}
}

运行:

length:  5
[Ljava.lang.String;@7852e922
arr2:  [1, 2, 3, 4, 5]
马超
马云
关羽
刘备
张飞
arrStrings:[1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
arrayList:[马超, 马云, 关羽, 刘备, 张飞]
马超在这里
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

Java中Arrays.toString ()打印二维数组及Array数组的常用操作相关推荐

  1. java中使用length获取二维数组的长度

    public class ArrayList{ public static void main(String[] args) {int[][] arr = new int [3][3];//定义一个二 ...

  2. 只需3个步骤,轻松解决程序员在Java中生成、扫描二维码难题

    条形码包含有关产品或公司的信息,以机器可读的形式直观地表示.条码广泛用于跟踪货物和库存管理.我们可以在 WPF 应用程序中轻松生成各种类型的条码.二维码广泛用于分享重要信息.对于不同的要求,您可能希望 ...

  3. java如何驱动z4mplus打印二维码_斑马 Zebra 打印机驱动下载

    斑马Zebra打印机驱动下载 环境支持: Windows Vista.Windows 7.Windows 8 和 Windows 10的所有版本. Windows Server 2008.2008 R ...

  4. java如何驱动z4mplus打印二维码_斑马 Zebra 打印机驱动下载,打印软件下载

    斑马Zebra打印机驱动下载 环境支持: Windows Vista.Windows 7.Windows 8 和 Windows 10的所有版本. Windows Server 2008.2008 R ...

  5. java打印二维数组_Java中如何打印二维数组

    在Java中如何打印二维数组 1.直接使用数组自带的toString------ 打印出数组的地址 2.使用Arrays.toString()---------- 打印每个二维数组的地址 3.使用Ar ...

  6. java的知识点17——java.util.Arrays类、多维数组

    java.util.Arrays类 Arrays类包含了:排序.查找.填充.打印内容等常见的操作. 打印数组 package cn.dym08; import java.util.Arrays;pub ...

  7. Java连接打印机打印二维码

    首先导入依赖 implementation 'com.google.zxing:core:3.5.1' implementation 'com.google.zxing:javase:3.5.1' 1 ...

  8. 【C 语言】数组 ( 验证二维数组内存是线性的 | 打印二维数组 | 以一维数组方式打印二维数组 | 打印二维数组值和地址 )

    文章目录 一.验证二维数组内存是线性的 1.打印二维数组 2.以一维数组方式打印二维数组 3.打印二维数组值和地址 二.完整代码示例 一.验证二维数组内存是线性的 验证二维数组内存是线性的 : 验证方 ...

  9. vue项目中批量打印二维码

    前提:项目中要打印的二维码为后台返回,批量选择后,点击打印,先打开二维码预览界面,再执行打印. 以下代码中 codePicList为选中的二维码数组.重点css:page-break-after:al ...

最新文章

  1. linux c 文件映射,linuxc试题
  2. man-翻译和epoll相关的内容,部分
  3. P8实战(二):分布式锁前置技能 etcd 集群搭建
  4. Python 中的Pandas库
  5. vue computed 源码分析
  6. 解决input设置背景后,在ie7下浏览内容过长背景跟着滚动
  7. 表格存储TableStore全新升级,打造统一的在线数据存储平台!
  8. 尘埃落定!熊猫互娱近20亿元投资纠纷已解决
  9. 【Unity Shader】(九) ------ 高级纹理之渲染纹理及镜子与玻璃效果的实现
  10. 微pe添加网络组件_为微PE添加网络组件win10 64位纯净维护系统集合常见网卡驱动支持BIOS/UEFI量产NVME...
  11. Ubuntu20.04如何解决QQ闪退问题(亲测有效)
  12. error:无法定位软件包
  13. ts类型声明文件的正确使用姿势
  14. 什么是CSR ? 什么是公钥和私钥?
  15. 斯坦福NLP名课带学详解 | CS224n 第15讲 - NLP文本生成任务(NLP通关指南·完结)
  16. Unity3D手游开发日记(3) - 场景加载进度条的完美方案
  17. 无耻,无知的韩国人!
  18. DB2001 深入了解DB2 reorg
  19. 基于OpenCV的人脸识别自助商店(源码&部署视频)
  20. Kylin常见错误及解决方法

热门文章

  1. OpenCV实现幻灯片滑slides soble的实例(附完整代码)
  2. QDoc上下文命令contextcommands
  3. Qt Creator美化源代码
  4. OpenGL Transform Feedback转换反馈的实例
  5. QT绘制嵌套的圆饼状图
  6. QT的QTreeWidgetItem类的使用
  7. chmod 文件夹及子文件夹_了解linux文件属性之chgrp,chown,chmod
  8. 1.18.2.10 解释表:Table.explain、物理执行计划等
  9. B16_NumPy线性代数(dot,vdot,inner,matmul,determinant,solve,inv)
  10. Linux服务器编程之:truncate()函数+案例说明