我有char“数据”
String dataB = String.valueOf(data) ;
dataB = dataB.replaceAll("[^0-9]", "") ;
StringBuilder sb = new StringBuilder();
String spane = Character.toString(char);
for (int i = 0; i < dataB.length; i++) {
sb.append(dataB.charAt(i));
if (!Character.toString(dataB.charAt(i)).equals(" ")) {
sb.append(" ");
}
}
String dataC = sb.toString() ;
System.out.println(dataC) ;
}
}
然后我尝试将其转换为字符串,删除除数字之外的所有字符,在每个字符后添加一个空格,然后打印。
答案 0 :(得分:1)
试试这个:
String origStr = ...;
StringBuilder sb = new StringBuilder();
for (int i = 0; i < origStr.length(); i++) {
char ch = origStr.charAt(i);
sb.append(ch);
if (ch != ' ' && (i % 2 == 1)) {
sb.append(' ');
}
}
String result = sb.toString();
答案 1 :(得分:1)
要在每隔一个字母后留出一个空格,请使用:
String newString = "yourStringHere";
StringBuilder sb = new StringBuilder();
int letterNumber = 1;
for (int i = 0; i < newString.length();i++) {
if (letterNumber > 1) {
sb.append(newString.charAt(i)).append(" ");
letterNumber = 0;
} else {
sb.append(newString.charAt(i));
}
letterNumber++;
}
String result = sb.toString();
System.out.println(result);
是的,根据Krayo的回答,这是一个改进的,现在正确的答案