• nyoj-1092-数字分隔(二)


    java大法好啊

    思路:单独拿出整数部分分隔

    题目链接

     1 import java.math.BigDecimal;
     2 import java.util.Scanner;
     3 
     4 public class Main{
     5 
     6     public static void main(String[] args) {
     7         Scanner cin = new Scanner(System.in);
     8         while (cin.hasNext()) {
     9             BigDecimal num = new BigDecimal("0");
    10             num = cin.nextBigDecimal();
    11             
    12             // 判断负数
    13             boolean flag = true;
    14             if (num.compareTo(BigDecimal.valueOf(0)) < 0) {
    15                 flag = false;
    16                 num = num.abs();
    17             }
    18             num = num.setScale(2, BigDecimal.ROUND_HALF_UP);
    19             // 保留小数部分
    20             String str = num.toString();
    21             String tail = str.substring(str.indexOf("."), str.length());
    22 
    23             // 保留头部
    24             StringBuffer head = new StringBuffer(str.substring(0, str.indexOf(".")));
    25 
    26             int j = 0;
    27             for (int i = head.length() - 1; i > 0; i--) {
    28                 if (head.charAt(i) != ',' && ++j == 3) {
    29                     head.insert(i, ",");
    30                     j = 0;
    31                 }
    32             }
    33             if (flag == true) {
    34                 System.out.print(head + tail + "
    ");
    35             } else {
    36                 System.out.print("(" + head + tail + ")"  + "
    ");
    37             }
    38         }
    39 
    40     }
    41 
    42 }
    43         
  • 相关阅读:
    获取字符串出现的次数
    手机号码正则表达式验证
    DOM: EVENT FLOW
    AsyncCallback 异步回调委托
    高德地图
    我的json
    Arrow function restore
    constructor&object 的联系与对比
    for each/in/of的解释and example
    program发展史及以后预测
  • 原文地址:https://www.cnblogs.com/slothrbk/p/8989029.html
Copyright © 2020-2023  润新知