黑马程序员技术交流社区

标题: 一旦数组创建,改变它的大小就会报错,一般要想在数组后面追加一些数据怎么操作! [打印本页]

作者: MagicBoy    时间: 2014-5-25 09:32
标题: 一旦数组创建,改变它的大小就会报错,一般要想在数组后面追加一些数据怎么操作!
一旦数组创建,改变它的大小就会报错,一般要想在数组后面追加一些数据怎么操作!

作者: jieyu90    时间: 2014-5-25 09:50
创建一个新数组,数组大小为你要的大小(原数组大小+扩容大小),然后再将原数组复制进去
作者: shi980088    时间: 2014-5-25 10:14
把数组遍历出来,然后再用另外一个数组去接收你遍历出来的数据和你要添加的数据
作者: 屋檐下的期待    时间: 2014-5-25 10:41
可以使用StringBuffer,   先使用 String.valueOf(char[]) 方法将参数转换为字符串,然后将所得字符串的字符追加到此字符序列。 public StringBuffer append(char[] str, int offset,int len)将 char 数组参数的子数组的字符串表示形式追加到此序列。 将 char 数组 str 中的字符按顺序追加到此序列的内容中,从索引 offset 开始。此字符的长度将增加 len。



作者: Seraphim    时间: 2014-5-25 14:17
可以换成List集合,长度是可以改变的
作者: MagicBoy    时间: 2014-6-2 12:55
屋檐下的期待 发表于 2014-5-25 10:41
可以使用StringBuffer,   先使用 String.valueOf(char[]) 方法将参数转换为字符串,然后将所得字符串的字符 ...

之前不会,昨天刚刚才学到StringBuffer.
作者: More    时间: 2014-6-2 14:36
有System.arraycopy()和Arrays.copyof()两种形式可以对数组进行扩展,原理就是赋值原数组到新数组中。

System.arraycopy(Object src,
                             int srcPos,
                             Object dest,
                             int destPos,
                             int length)
src:源数组;        srcPos:源数组要复制的起始位置;
dest:目的数组;        destPos:目的数组放置的起始位置;        length:复制的长度。


作者: 冯云飞    时间: 2014-6-2 16:33
StringBuilder不是挺好用的???
作者: KevinSmart    时间: 2014-6-2 18:30
创建一个新数组,或者换成list集合
作者: idency    时间: 2014-6-3 22:37
不明觉历,我还得继续学习




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2