问题

因为 Java 数组中没有 toString() 方法,所以我如果直接调用数组toStrign()方法的话,只会得到它的内存地址。像这样,显得并不人性化:

int[] intArray = new int[] {1, 2, 3, 4, 5};
System.out.println(intArray);     // 有时候会输出 '[I@3343c8b3'

所以输出一个数组最简单的方法是什么?我想要的效果是

// 数字数组:
int[] intArray = new int[] {1, 2, 3, 4, 5};
//输出: [1, 2, 3, 4, 5]// 对象数组:
String[] strArray = new String[] {"John", "Mary", "Bob"};
//输出: [John, Mary, Bob]

回答

在 Java 5+ 以上中使用 Arrays.toString(arr) 或 Arrays.deepToString(arr)来打印(输出)数组。

不要忘了引入import java.util.Arrays;

package packageName;
import java.util.Arrays;
int[] intArray = new int[] {1, 2, 3, 4, 5};
System.out.println(Arrays.toString(intArray));
//输出: [1, 2, 3, 4, 5]String[] strArray = new String[] {"John", "Mary", "Bob"};
System.out.println(Arrays.deepToString(strArray));
*//输出: [John, Mary, Bob]

Arrays.deepToString与Arrays.toString不同之处在于,Arrays.deepToString更适合打印多维数组
比如:

String[][] b = new String[3][4];for (int i = 0; i < 3; i++){for (int j = 0; j < 4; j++){b[i][j] = "A" + j;}} System.out.println(Arrays.toString(b));//输出[[Ljava.lang.String;@55e6cb2a, [Ljava.lang.String;@23245e75, [Ljava.lang.String;@28b56559]System.out.println(Arrays.deepToString(b));//输出[[A0, A1, A2, A3], [A0, A1, A2, A3], [A0, A1, A2, A3]]

stackoverflow链接: http://stackoverflow.com/questions/409784/whats-the-simplest-way-to-print-a-java-array

输出 Java 数组最简单的方式相关推荐

  1. 打印Java数组最优雅的方式

    在逛 Stack Overflow 的时候,发现了一些访问量像‎安第斯山一样高的问题,比如说这个:打印 Java 数组最优雅的方式是什么?访问量足足有 220W+,想不到啊,这么简单的问题竟然有这么多 ...

  2. 用什么方式学java_五分钟学Java:打印Java数组最优雅的方式是什么?

    在逛 Stack Overflow 的时候,发现了一些访问量像‎安第斯山一样高的问题,比如说这个:打印 Java 数组最优雅的方式是什么?访问量足足有 220W+,想不到啊,这么简单的问题竟然有这么多 ...

  3. java数组遍历最快方式_java数组遍历的方法

    对于数组来说,基本上可以看做是一些数字.我们在使用字符串的时候,有过遍历的操作,那么对应的数组也能够进行遍历.这里为大家整理了三种遍历的方法.for循环.foreach.toString(),第二种可 ...

  4. Java数组—三种创建方式与区别

    Java创建数组有三种方式 1. 第一种方式 int arr [ ]  = new int [5] ; 属于动态创建,声明并创建内存空间,等待赋值. //创建数组的第一种方式 //属于动态创建,声明并 ...

  5. java 数组和List排序方式汇总

    前言 在工作中使用java, 需要存储一列数据时,脑子里只剩下List一种数据类型了--因为工作场景,很多时候数据个数是位置的,那为了不会有数据溢出或是节省存储空间,List类型是最方便的. 然而,刷 ...

  6. java 数组拼接_打印Java数组最优雅的方式是什么?这波操作闪瞎我

    在 Java 中,数组虽然是一个对象,但并未明确的定义这样一个类,因此也就没有覆盖 toString() 方法的机会.如果尝试直接打印数组的话,输出的结果并不是我们预期的结果.那有没有一些简单可行的方 ...

  7. 数据结构笔记--栈的总结及java数组实现简单栈结构

    杂谈"栈"结构: 栈(Stack)是一种插入删除操作都只能在一个位置上进表,这个位置位于表的末端,叫做栈顶(Top). 对栈的基本操作有push和pop,表示进栈和出栈.也就相当于 ...

  8. java数组最简单的去重方法_Java数组去重的方法

    //第一种方式:最开始想到的是利用Set集合的不可重复性进行元素过滤 public static Object[] oneClear(Object[] arr){ Set set = new Hash ...

  9. Java数组初始化三种方式

    初始化方式: 静态初始化 int[] intArr; intArr = new int[]{1,2,3,4,5,9}; 简化的静态初始化方式 String[] strArr = {"张三&q ...

最新文章

  1. Emacs 矩形编辑
  2. zTree的调用设使用(跨两个系统,两类技术实现的项目案例SpringMVC+Spring+MyBatis和Struts2+Spring+ibatis框架组合)
  3. 放下表格——开箱即用的新冠疫苗接种统计模板来了!
  4. 浅析几种常见算法(转载)
  5. HDU - 5790 Prefix(主席树+字典树)
  6. H5 获取手机GPS坐标
  7. 牛!又一顶级大厂开招.NET,5年35k!
  8. 2016蓝桥杯省赛---java---A---6(寒假作业)
  9. C/C++ OpenCV均值滤波
  10. 【Win 10 应用开发】分析 URI 中的查询字符串
  11. php调用at命令,执行AT命令在php中发送短信
  12. 学而思网校python助手_学而思网校直播课堂
  13. SAP License:ERP企业资源计划
  14. python并行任务之生产消费模式
  15. python数据类型总结
  16. python3 输出系统信息
  17. Mac 连不上华为 p9 处理历程(一)
  18. [译]Chipmunk教程 - 5 跟踪球体的运动
  19. 利用ST MCU内部的基准参考电压监测电源电压及其它
  20. ElastcSearch的Mapping映射建立

热门文章

  1. python爬取凤凰新闻网_python爬取凤凰网站的新闻,及其链接地址,来源,时间和内容,用selenium自动化和requests处理数据...
  2. OpenCV的基本矩阵操作与示例
  3. 操作系统练习题(2)
  4. 【Ubuntu系统配置】006Ubuntu20.04安装QQ for Linux v3.0(del文件安装卸载)
  5. MongoDB基本操作(Nosql数据库入门与实践)
  6. Docker-windows使用教程
  7. 零基础入门UI设计必备实用技巧!
  8. ARM官方汇编与ARM GNU汇编中的伪操作
  9. linux-patch用法
  10. python pip 查看一个package的所有版本