我想把输出的数字,如果是1位的,格式化成两位,两位的不变
比如,1变成01,2变成02,10不变
是用format么,怎么用?

解决方案 »

  1.   

    最简单的方法:(i只是为了取值,你可以根据你自己的数据进行输出!我想用不着那么麻烦)
    for(int i = 0;i<100;i++)
    {
       if(i<10) System.out.println("0"+i);
       if(i>9)  System.out.println(i);
    }
      

  2.   

    /**
       * 在字串的左邊補0
       * @param str 要補0的字串
       * @param len 補0后的字串的長度
       * @return 補0后的字串
       */
      protected String Padl(String str, int len) {
        int lenStr = str.length();
        StringBuffer sb = new StringBuffer(str);
        while (lenStr < len) {
          sb.insert(0, "0");
          lenStr++;
        }
        return sb.toString();
      }
      

  3.   

    最简单应该是正则表达式吧:(
            String number = "2";
            System.out.println(number.replaceAll("^([1-9])$", "0$1"));
      

  4.   

    JDK 1.5 以上版本:
    int num = 1;
    String str = String.format("%02d", num);JDK 1.5 以下版本:
    DecimalFormat df = new DecimalFormat("00");
    int num = 2;
    String str = df.format(num);
      

  5.   

    String.format("%1$02d", str)我是这么做的,也好用
    谢谢大家