求解这两句代码 查看API,toArray参数的说明:存储此 collection 元素的数组(如果其足够大);否则,将为此分配一个具有相同运行时类型的新数组。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你的代码里面字符串数组就没赋值,怎么会打印出来A,B,C,D? String atr[];这样的语句只是定义一个指向String类型数组的一个引用,它不管自己指向的数组引用的大小。 String atr[]=listc.toArray(atr);这种方式获取它返回的数组有一个好处就是你也许不知道他返回的数组有多大。如果你用String atr[]=new String[1]的方式,那么他长度是10,你只给了5的长度就会出下标越界的异常,如果你给了20,那就浪费了10个位置的长度。这就是两种方式的区别。另外我不知道你那个listc是个什么的对象,所以不好判断为什么会输出这些。猜测应该是你那个返回的数组就是个长度为1的字符串数组,然后这个字符串就是"ABCDE";其实也很好判断,你这个System.out.println();输出语句他会换行,你的ABCDE如果是在一行输出的那么就是这个字符串只有一个,值就是"ABCDE",应该不可能是在五行输出的。 谁告诉你 String atr[]=new String[1];这样就是分配了一个内存空间? java读取文件中内容,在线等 Java中如何获取带返回集(触发器中返回)的insert语句 急:如何实现一个JTree中的结点点击后,调用不同不同的panal 类的编译 高手请进! 请问什么叫重构?什么是面向对象?(Java) InetAddress.getLocalHost()的疑问 java的程序只能在jc中才能执行吗,怎么像别的程序一样可以有个exe什么的?? 一个数组的小问题 谁有比较好的中国象棋算法,可以借我参考一下吗?(40分) java客户端怎么把本地的文件上传到服务器 请教一个关于多线程的问题.
如果你用String atr[]=new String[1]的方式,那么他长度是10,你只给了5的长度就会出下标越界的异常,如果你给了20,那就浪费了10个位置的长度。
这就是两种方式的区别。
另外我不知道你那个listc是个什么的对象,所以不好判断为什么会输出这些。
猜测应该是你那个返回的数组就是个长度为1的字符串数组,然后这个字符串就是"ABCDE";
其实也很好判断,你这个System.out.println();输出语句他会换行,你的ABCDE如果是在一行输出的那么就是这个字符串只有一个,值就是"ABCDE",应该不可能是在五行输出的。