java怎么动态的往一个字符串数组里加入字符串元素,

比如String[]m;然后动态的往这个没有定义大小的m里添加字符串。怎么添加。高分50悬赏... 比如String[] m; 然后动态的往这个没有定义大小的m里添加字符串。怎么添加。 高分 50悬赏 展开
 我来答
历盆郁7
推荐于2017-10-15 · TA获得超过4277个赞
知道大有可为答主
回答量:1795
采纳率:100%
帮助的人:936万
展开全部
1.创建按一个新数组,新数组的长度比现在的大1个
2.将老数组的内容copy到新数组中
3.给新数组的最后一个元素赋值为 插入的字符串
4.删除老数组,(GC处理)
5,给你个例子,你看看
import java.util.Arrays;
public class $
{
public static void main(String[] args)
{

String[] arr = { "1", "2" };
System.out.println(Arrays.deepToString(arr));

arr = insert(arr, "a");
System.out.println(Arrays.deepToString(arr));

arr = insert(arr, "b");
System.out.println(Arrays.deepToString(arr));
}

private static String[] insert(String[] arr, String str)
{
int size = arr.length;

String[] tmp = new String[size + 1];

System.arraycopy(arr, 0, tmp, 0, size);

tmp[size] = str;

return tmp;
}
}

结果

[1, 2]
[1, 2, a]
[1, 2, a, b]
非鱼共享
2015-06-08 · 专注互联网技术,快速了解互联网研发
非鱼共享
采纳数:204 获赞数:695

向TA提问 私信TA
展开全部

希望把标题能把问题说明白,什么叫动态往一个字符串数据组里加入元素?我可以理解为你new一个数组之后,给这个数组赋值么?比如:

String [] arr = new String[20];
for (int i=0; i< arr.length; i++) {
    arr[i] = "i = " + i;//这里是赋值,是这个意思么?
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
flsfycy
推荐于2017-09-16 · TA获得超过729个赞
知道小有建树答主
回答量:1002
采纳率:0%
帮助的人:708万
展开全部
  1. 使用:System.arraycopy(src, srcPos, dest, destPos, length)

    String [] arr1 = new String[]{ "1", "2" };

    String [] arr2 = new String[3];

    System.arraycopy(arr1, 0, arr2, 0, arr1.length);

  2. 使用ArrayList<String>,不用这么麻烦。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bd9006
2013-01-17 · TA获得超过2.5万个赞
知道大有可为答主
回答量:4.8万
采纳率:63%
帮助的人:1.6亿
展开全部
用临时数组,添加、合并。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
让我重返光荣
2013-01-17
知道答主
回答量:11
采纳率:0%
帮助的人:3.1万
展开全部
StringBuilder sb =new StringBuilder();
sb.append(1).append("2");
append后面能加各种类型的值。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式