问题:将一个数字字符串转换成逗号分隔的数字串,即从右边开始每三个数字用逗号分隔。
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
//创建扫描器对象
Scanner input = new Scanner(System.in);
System.out.println("请输入一段数字:");
//定义输入框
String number = input.next();
//创建StringBuffer类对象
StringBuffer sb = new StringBuffer(number);
//调用getNumber函数并输出结果
System.out.println(getNumber(number));
//运用递减循环和StringBuffer类的插入字符函数insert函数求解
/*for(int i = number.length() - 3;i >= 0;i-= 3){
sb.insert(i,",");
}
System.out.println(sb);*/
}
//定义静态getNumber函数
public static String getNumber(String str){
//设置递归条件
if(str.length() >3){
//递归
return getNumber(str.substring(0,str.length()-3)) + ","+ str.substring(str.length()-3);
}
//返回递归结果
return str;
}
}
1.运行画面:
2.输入画面:
3.输出结果: