一、题目
描述
对于一个较大的整数 N(1<=N<=2,000,000,000)
比如 980364535,我们常常需要一位一位数这个数字是几位数,但是如果在这 个数字每三位加一个逗号,它会变得更加易于朗读。
因此,这个数字加上逗号成如下的模样:980,364,535请写一个程序帮她完成这件事情
输入描述:
一行一个整数 N
输出描述:
一行一个字符串表示添加完逗号的结果
示例1
输入:
980364535
输出:
980,364,535
备注:
1≤n≤2,000,000,000
二、思路解析
这道题也是一道不算很难的模拟题,但我刚开始,实在是想不出咋落笔,就去逛了下评论区。
这不,念头一转,黄金万两。
通过一个 StringBuffer,从后开始往前添加字符串,然后用一个 count 变量来计数,每 3 个数就 append 一个 " , " 就完了。
最后逆序一下打印就行啦,具体实现请看下面代码👇
三、完整代码
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
char[] N = in.next().toCharArray();
int num = N.length;
StringBuffer ret = new StringBuffer();
int count = 0;
for(int i = num - 1; i >= 0; i--){
if(count == 3){
ret.append(',');
count = 0;
}
ret.append(N[i]);
count++;
}
System.out.println(ret.reverse().toString());
}
}
以上就是本篇博客的全部内容啦,如有不足之处,还请各位指出,期待能和各位一起进步!