前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >JAVA打印数组的四种方法

JAVA打印数组的四种方法

作者头像
全栈程序员站长
发布2022-08-11 20:13:11
发布2022-08-11 20:13:11
1.3K00
代码可运行
举报
运行总次数:0
代码可运行

大家好,又见面了,我是你们的朋友全栈君。

文章目录

JAVA打印数组的四种方法

无聊看模块Integer.java源码时(IDEA中鼠标悬浮在Integer上按ctrl+alt 可以转到类源码),因为刚学java,想尝试着仿照python的方法打印数组:

代码语言:javascript
代码运行次数:0
复制
final int[] arr1 = { 
   1,2,3,4,5};
System.out.println(arr1);

只打印出了地址:

于是上网搜了下打印数组内容的正确方法,整理如下:

1.循环打印数组

代码语言:javascript
代码运行次数:0
复制
String [] arr2 = { 
   "dashi", "baiqun", "wangxiang", "wennuan", "ni"};
代码语言:javascript
代码运行次数:0
复制
public static void loopPrintArray(String []arr) { 
   
    StringBuffer sb = new StringBuffer();
    for (int i = 0; i < arr.length; i++) { 
   
        if(i>0){ 
   
            sb.append(",");
        }
        sb.append(arr[i]);
    }

    System.out.println(sb.toString());
}
代码语言:javascript
代码运行次数:0
复制
// 循环打印数组
System.out.println("------------ loop -------------");
loopPrintArray(arr2); // 不带[]输出一行

结果:

可以看到,方法loopPrintArray是把数组中每一个元素用 “,” 连接成一个字符串再输出。

2.使用Arrays.toString()方法

使用Arrays类需要引用:

代码语言:javascript
代码运行次数:0
复制
import java.util.Arrays;

代码:

代码语言:javascript
代码运行次数:0
复制
String [] arr2 = { 
   "dashi", "baiqun", "wangxiang", "wennuan", "ni"};
代码语言:javascript
代码运行次数:0
复制
public static void toStingPringArray(String []arr) { 
   
    System.out.println(Arrays.toString(arr));
}
代码语言:javascript
代码运行次数:0
复制
// 使用Arrays.toString()方法
System.out.println("-- Arrays.toString() Methods --");
toStingPringArray(arr2); // 带[]输出一行

结果:

这个输出结果就和python中打印数组很相仿了。

3.使用JDK 8 的 java.util.Arrays.stream()

同样需要导入:

代码语言:javascript
代码运行次数:0
复制
import java.util.Arrays;

代码:

代码语言:javascript
代码运行次数:0
复制
String [] arr2 = { 
   "dashi", "baiqun", "wangxiang", "wennuan", "ni"};
代码语言:javascript
代码运行次数:0
复制
// 3.使用JDK 8 的 java.util.Arrays.stream()
public static void streamPrintArray(String []arr) { 
   
    Arrays.stream(arr).forEach(System.out::println);
}
代码语言:javascript
代码运行次数:0
复制
// 使用JDK 8 的 java.util.Arrays.stream()
System.out.println("--- Arrays.stream() Methods ---");
streamPrintArray(arr2); // 分行输出

结果:

Arrays.stream()方法是将数组元素分行输出。

4 使用Arrays.deepToString()

对于deepToString,若为多维数组则会用同样的方法打印

代码:

代码语言:javascript
代码运行次数:0
复制
String [] arr2 = { 
   "dashi", "baiqun", "wangxiang", "wennuan", "ni"};
String [][] arr3 = { 
   { 
   "llama","truthahn"},{ 
   "xiaoerer","laopenzi"},{ 
   "xiangnile","haha.."}};
代码语言:javascript
代码运行次数:0
复制
// 4.1 使用Arrays.deepToString()
public static void deepToStringPringArray(String []arr) { 
   
    System.out.println(Arrays.deepToString(arr));
}
// 4.2 对于deepToString,若为多维数组则会用同样的方法打印
public static void deepToStringPringArrayExpand(String [][]arr) { 
   
    System.out.println(Arrays.deepToString(arr));
}
代码语言:javascript
代码运行次数:0
复制
// 扩展使用Arrays.toString(): Arrays.deepToString()
System.out.println("- Arrays.deepToString() Methods -");
deepToStringPringArray(arr2);
// deepToStringPringArray(arr3); // 不兼容:java.lang.String[][]无法转换为java.lang.String[]
System.out.println("- Arrays.deepToString() Expanded -");
deepToStringPringArrayExpand(arr3);

结果:

可以看到对二级数组,使用deepToString()方法使得数组arr3按照之前相同的模式输出。

个人心得

学习一种编程语言时还是要多思考,理解和实践同样重要。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/131169.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年4月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • JAVA打印数组的四种方法
    • 1.循环打印数组
    • 2.使用Arrays.toString()方法
    • 3.使用JDK 8 的 java.util.Arrays.stream()
    • 4 使用Arrays.deepToString()
  • 个人心得
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档