本帖最后由 丁朋 于 2012-7-13 22:49 编辑
关于运用copyArray方法复制数组时出现了for语句遍历数组自动换行问题?求解答。 问题描述:我用copyArray复制数组,用for[int x:arr]遍历数组,为什么出现自动换行问题。 我的源代码如下: //需求:copyArr的应用。数组复制。 import java.util.Arrays; class CopyArr { public static void main(String[] args) { int arr1[]={1,2,5,6,7,4,333,2}; int arr2[]=Arrays.copyOf(arr1,8); int arr3[]=Arrays.copyOf(arr1,9); int arr4[]=Arrays.copyOf(arr1,7); for(int x:arr1) { if(x==arr1.length-1) System.out.println(x); else System.out.print(x+","); } for(int i=0;i<arr1.length;i++) { if(i==arr1.length-1) System.out.println(arr1); else System.out.print(arr1+","); } for(int i=0;i<arr2.length;i++) { if(i==arr2.length-1) System.out.println(arr2); else System.out.print(arr2+","); } for(int i=0;i<arr3.length;i++) { if(i==arr3.length-1) System.out.println(arr3); else System.out.print(arr3+","); } for(int i=0;i<arr4.length;i++) { if(i==arr4.length-1) System.out.println(arr4); else System.out.print(arr4+","); } } } 运行结果: D:\Java\program>javac CopyArr.java D:\Java\program>java CopyArr 1,2,5,6,7 (此处自动换行了,arr1.length在初始化时为8。好奇怪。) 4,333,2,1,2,5,6,7,4,333,2 1,2,5,6,7,4,333,2 1,2,5,6,7,4,333,2,0 1,2,5,6,7,4,333 截图如下
为什么它自己换行了,我用源程序下面的另一种for语句调用方式却显示正常。 这是什么问题? |