题目描述
描述
将一个由英文字母组成的字符串转换成从末尾开始每三个字母用逗号分隔的形式。
输入描述:
一个字符串
输出描述:
修改后的字符串
思路
因为String类型字符串不可变,我们用这个字符串创建一个新的StringBuilder型的字符串,然后从字符串末尾第3位开始,每次三位三位地遍历,将逗号用insert函数插入其中。最后将StringBuilder型转变成String输出即可。
代码
方法1:
import java.util.Scanner;
import java.util.ArrayList;
import java.util.List;
import java.util.Collections;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String str = scanner.next();
//write your code here......
char[] s=str.toCharArray();
List<Character> list=new ArrayList<Character>();
int count=3;
for(int i=s.length-1;i>=0;i--){
if(count>0){
list.add(s[i]);
count--;
}
if(count<=0){
list.add(',');
count=3;
}
}
Collections.reverse(list);
list.forEach((item)->{
System.out.print(item);
});
}
}
方式2:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String str = scanner.next();
//write your code here......
StringBuilder builder=new StringBuilder(str);
for(int i=str.length()-3;i>0;i-=3){
builder.insert(i,',');
}
System.out.println(builder.toString());
}
}
结果