我有一个200个元素长的char数组,我在循环中加载带有新字符的向量,并且 在每个周期,元素编号可能与前一个元素编号不同,那么如何清空阵列中不需要的位置? 注意:元素大小必须为200,我无法解决使用new创建对象的新实例的问题。
由于
答案 0 :(得分:3)
你的意思是:
Arrays.fill(array, index, array.length, '\0');
?当然,这只会用U + 0000值覆盖数组的其余部分......没有char[]
元素为“空”的东西。 总是在数组中的每个元素上都是char
; U + 0000是一种方式,表示“不要将其视为真实数据”。
答案 1 :(得分:1)
如果您要删除字符,我会使用StringBuilder。这比使用Vector更有效。
char[] chars = new char[50];
Arrays.fill(chars, '-');
StringBuilder sb = new StringBuilder();
sb.append(chars);
// remove characters 10 to 15.
sb.delete(10, 15);
// remove a character
sb.deleteCharAt(24);
// replace some characters
sb.replace(30, 40, "Hello World");
System.out.println(sb);
打印
------------------------------Hello World----