如何在android中的另一个String数组中添加一个String?

时间:2016-01-26 13:06:39

标签: java android arrays string

这是我的java代码,这里我必须在字符串数组项类型中添加一个字符串“RFID”,我必须将它存储在另一个字符串数组项中。但我得到一个错误。

  String[] itemtype;
  String[] item;
     \...........
      .........../
   try {
                response = (SoapPrimitive) envelope.getResponse();
                Koradcnos = response.toString();
            } catch (SoapFault e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            itemtypes = Koradcnos.split(";");
            item=itemtypes+"RFID";//here im getting error
        } catch (Exception er) {
            //Helper.warning("Error", er.toString(),this);
        }
         imageId = new int[itemtypes.length];
        for (int i = 0; i < itemtypes.length; i++)
            if (itemtypes[i].equals("Yarn")) {
                imageId[i] = R.drawable.yarnitem;

3 个答案:

答案 0 :(得分:1)

你需要解决这个问题:

使用Arrays.copyOf

item =  Arrays.copyOf(itemtypes , itemtypes.length + 1);
item[item.length - 1] = "RFID";

或从Koradcnos

直接拆分
item = (Koradcnos + ";RFID").split(";");

答案 1 :(得分:0)

itemtypes是String数组,无法修改,如果要获取添加其他元素的新数组,可以使用System.arrayCopy

System.arraycopy(Object src,  
             int  srcPos,
             Object dest, 
             int destPos,
             int length)

像这样:

item = new String[itemtypes.length+1];
System.arraycopy(itemtypes,0,item,0,itemtypes.length);
item[itemtypes.length] = "RFID";

答案 2 :(得分:0)

您不能将字符串与列表连接String.split()方法返回String数组。

而不是item=itemtypes+"RFID"遍历数组:

for (int i=0; i < itemtypes.length();  i++) {
    item[i] = itemtypes[i] + "RFID";
}

另外,我认为变量名称为itemtypes而不是itemtype