list2.get(i).replace(list2.get(i).charAt(4), list3.get(i));
list2
是字符串arraylist,例如[00110001, 11111111, 00000000,
01001010, 00000000]
我想替换list2中每个元素的第4个字符,即替换
list3
中的字符存储,因此它将包含[1, 0, 1, 1, 1]
最后,我的arraylist list2应该看起来像[00111001, 11110111, 00001000, 01001010, 00001000]
。
答案 0 :(得分:2)
首先,您必须注意String
是不可变的。这意味着您无法通过在list2.get(i)
上运行任何方法来执行此操作。所有字符串方法都返回新的字符串值,但不会更改原始字符串的值。
因此,您必须使用list2.set( i, newValue )
将前一个字符串替换为您将构造的新字符串。
现在,你如何构建价值?你获取了不应该改变的字符串部分,并在它们之间粘贴新的字符值:
类似的东西:
String oldValue = list2.get(i);
String newValue = oldValue.substring(0,3) + list3.get(i) + oldValue.substring(5);
答案 1 :(得分:0)
你可以这样做: