java基础之 Arrays.toString()方法详解
程序员文章站
2022-03-15 08:52:39
在实际项目中,如果想要把数组中的内容打印出来,直接使用tostring方法只会打印出数组的地址,因此需要使用arrays的tostring方法,可以从其内部实现中看出来,该方法支持入参可以是long,...
在实际项目中,如果想要把数组中的内容打印出来,直接使用tostring方法只会打印出数组的地址,因此需要使用arrays的tostring方法,
可以从其内部实现中看出来,该方法支持入参可以是long,float,double,int,boolean,byte,object 型的数组。
补充:java中arrays.tostring(int [ ] arr)方法的底层原理
我就废话不多说了,大家还是直接看代码吧~
/** *@author:肖佳嘉 * */ * public static string tostring(int[] a) * public static void sort(int[] a) * public static int binarysearch(int[] a,int key) * * public static string tostring(int[] a) { if (a == null) //如果传入的数组是null return "null"; //返回null int imax = a.length - 1; //imax最大索引 if (imax == -1) //如果数组中没有元素 return "[]"; //返回[] stringbuilder b = new stringbuilder(); //线程不安全,效率高 b.append('['); //将[添加到字符串缓冲区中 for (int i = 0; ; i++) { //遍历数组,判断语句没有写默认是true b.append(a[i]); //把第一个元素添加进字符串缓冲区 if (i == imax) //如果索引等于了最大索引值 return b.append(']').tostring(); //将]添加到字符串缓冲区,在转换成字符串并返回 b.append(", "); //如果不等于最大索引就将, 添加到缓冲区 } }
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。
下一篇: 说明我真是亲生的啊