JAVA中String字符串删除指定字符的办法

  场景:

   有个字符串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(" ", "");
这里有几个坑,一是数组转为字符串时,得在后面加上","逗号;二是数组莫名还会加进了空格进去,所以最后得把空格符号替换掉。

版权声明:本文为zerovpp原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。