import java.util.Scanner;
/**
* @Description 将字符串从右每3位加一个逗号
* @Version V1.0 2018/12/12 18:48
* @Author shysin
**/
public class StringConvertSplit {
public static void main(String[] args) {
System.out.print("请输入一串数字:");
Scanner sc = new Scanner(System.in);
String num = sc.next();
//分割字符串返回一个String数组
String[] nums = num.split("");
//计算需要添加","的数量
int a = nums.length / 3;
String[] tmp = new String[nums.length+a];
//反向循环获取字符
for(int i=nums.length-1,j=nums.length+a-1,s=0; i>=0&&j>=0; i--,j--){
tmp[j] = nums[i];
s++;
//如果是3位,则在下一位填一个","
if(s % 3 == 0){
tmp[j] = nums[i];
j--;
tmp[j] = ",";
}
}
//去除每3位数字前面的",",如果不加,则输入 "123" ,将会输出 ",123"。当然,也可以在上方代码判断,不过这样更简单
if((tmp.length-a) % 3 == 0){
tmp[0] = "";
}
for(String x : tmp){
System.out.print(x);
}
}
}
import java.util.Scanner;
/**
* @Description