java输出数组中的元素_java一行代码输出数组的所有元素内容

2023-05-16

如果要用java把一个数组的元素都输出到控制台的话,你要怎么做呢?

是通过一个循环去循环数组中的各个元素,然后输出吗?

b6c66f6546cb2b1b39e853401fc3e103.png像不像二维数组

今天我要说的是,可以通过一行代码就完成这个工作。是一样什么样的代码呢。

看我下面的代码吧。

92ba676edd8a87b10cec01f4e79138c1.png

定义了数组之后就只是写了一行代码,那这样能达到输出数组所有元素这个目的吗?看一下执行结果就知道了。

b8105396a7be279277d22a0934e0e4ce.png

是达到我要的目的了。

是不是挺神奇?其实真没那么神奇。一起来看看源码,看看这个Arrays.toString做了什么吧。

276f3e83e467e0cd9e36613caac75630.png

其实他只是替我们做了循环的事情。

那如果是二维数组或者更多维数组的话,从上面源码来看是无法输出所有元素了。

试试看。

87e5052634cbcdc50e79aadcca9c0848.png

输出的是内部数组的内存地址。没有达到我们想要的效果啊。

那要怎么办呢?

不用担心,java.util.Arrays这个类,又给我们提供了一个方法,就是针对上面这种情况的。是什么方法呢?看下面的代码。

c2daf013e5cf5456b000d0f1a08f62ee.png

这次就达到我们的目的了。

看看这个Arrays.deepToString是怎么做到的吧。

75611adcb2847426b5994625c57025df.png代码图1

4292eb9602d51f9f0e2de53b70703dd7.png代码图2

2b7756f7346332713295b6c34dd306c8.png代码图3

6ef728ea20a577c9e9f715e91d137563.png代码图4

代码方法比较长,分开截了多张图。代码图1中的方法,是我示例代码调动的方法。在代码图1中调用了代码图2中定义的方法(代码图2、代码图3、代码图4三张图整体是一个方法,为了展示方便,分拆成了三张图。有兴趣的朋友可以自己去源码中查看),在代码图3中,可以看到,如果数组元素是列举的这些类型的数组,则直接调用Arrays.toString。如果数组元素不是列举的这些类型的数组,则会再调用自身方法(代码图2中定义的方法)。这种调用方式叫做递归。

就是通过这样的一个方式达到了输出多维数组的元素的目标。

java一行代码输出数组的所有元素内容就到这里了。如果大家觉得有必要谢谢递归的话,就在评论区里告诉我。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java输出数组中的元素_java一行代码输出数组的所有元素内容 的相关文章

随机推荐