场景:
有个字符串oldStr,内容为“a,b,c,d,e",想动态删除某个字符,或c或b。
解决办法:
1、转数组
String[] arr = oldStr.split(",");
ArrayList<String> m = new ArrayList<>();
for (int i = 0; i < arr.length; i++) {//add进ArrayList数组
m.add(arr[i].trim());
}先转数组string[],再转ArrayList,主要为删除作准备;
2、删除指定字符d
for (int i = 0; i < m.size(); i++) {//用ArrayList的remove功能,移除指定字符 if ("d".equals(m.get(i))) { m.remove(i); } }
3、再将剩下的数组转String
String s1 = m.toString(); String s2 = s1.substring(1, s1.length() - 1) + ",";//去除首尾[]符号,并加上”,“号 String s = s.replaceAll(" ", "");这里有几个坑,一是数组转为字符串时,得在后面加上","逗号;二是数组莫名还会加进了空格进去,所以最后得把空格符号替换掉。

本文介绍了一种在Java中动态删除字符串特定元素的方法。首先将原始字符串转换为字符串数组,接着利用ArrayList进行元素的增删操作,最后再将处理后的ArrayList转换回字符串形式。过程中涉及字符串分割、ArrayList的使用及字符串拼接等技术要点。
3195

被折叠的 条评论
为什么被折叠?



