我无法删除字符串中的所有大写字符.任何见解都表示赞赏.
如果我输入MANDY为str,我输出为AD.我不确定为什么会有这种行为.
StringBuilder outString = new StringBuilder(str);
for(int i = 0; i<outString.length(); i++){
if(Character.isUpperCase(outString.charAt(i))){
outString.deleteCharAt(i);
}
}
return outString.toString();
Run Code Online (Sandbox Code Playgroud)
谢谢
通过删除您更改索引的字符,不会删除每个大写字符.
一个简单的"技巧"是以相反的方式迭代缓冲区(从结束开始).这样,您只会影响已处理字符的索引
for(int i = outString.length()-1; i>=0; i--){
if(Character.isUpperCase(outString.charAt(i))){
outString.deleteCharAt(i);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
98 次 |
| 最近记录: |