waysun一路陽光

          不輕易服輸,不輕言放棄.--心是夢的舞臺,心有多大,舞臺有多大。踏踏實實做事,認(rèn)認(rèn)真真做人。

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 ::  :: 管理 ::
            167 隨筆 :: 1 文章 :: 64 評論 :: 0 Trackbacks
          public String getFourToFive(double score_type)
           {
            double bl=(Math.round(score_type/.01)*.01);
            String st=String.valueOf(bl);
            /**注意,這里用.作為分隔符是失效的,不知道為什么,所以采用替換的辦法*/
            st=st.replace(".", "_");
            String []st_arr=st.split("_");
            String temp="";
            if(st_arr[1].length()>2)
            {
             temp=st_arr[1].substring(0, 2);
            }
            else
            if(st_arr[1].length()<2)
            {
             temp=st_arr[1]+"0";
            }
            else
            {
             temp=st_arr[1];
            }
            return st_arr[0]+"."+temp;
           }
          posted on 2009-04-15 09:26 weesun一米陽光 閱讀(5596) 評論(3)  編輯  收藏 所屬分類: JAVA源碼常用工具類

          評論

          # re: JAVA四舍五入(小數(shù)點后保留兩位數(shù)字)[自己總結(jié)] 2009-04-16 11:06 重慶理工小子
          寫了一個通用的,希望對你有用!

          public class test {
          /**
          * @param str
          * 處理參數(shù)
          * @param num
          * 保留小數(shù)位數(shù)
          * @return 返回值
          */
          public static String RoundOf(String str, int num) {
          if (str.indexOf(".") > -1) {
          String str1 = str.substring(str.indexOf(".") + 1, str.indexOf(".")
          + 1 + str.length() - (str.indexOf(".") + 1));
          int i = 0;
          if (num < 0)
          num = 0; // 如果指定要保留的小數(shù)位小于零,則初始化為零
          if (str1.length() > num) {
          if (Integer.valueOf(str1.substring(num, num + 1)) > 4) {
          int val = 0;
          val = Integer.valueOf(str1.substring(0, num + 1))
          + (10 - Integer.valueOf(str1
          .substring(num, num + 1)));
          if (String.valueOf(val).length() > (num + 1)) {
          i = 1;
          str1 = String.valueOf(val).substring(1, num + 1);
          } else {
          str1 = String.valueOf(val).substring(0, num);
          }
          } else {
          str1 = str1.substring(0, num);
          }
          if (str.indexOf(".") > 0) {
          String str2 = str.substring(0, str.indexOf("."));
          if (num > 0) {
          str = String.valueOf(Integer.valueOf(str2) + i) + "."
          + str1;
          } else {
          str = String.valueOf(Integer.valueOf(str2) + i);
          }
          } else {
          if (num > 0) {
          str = String.valueOf(i) + "." + str1;
          } else {
          str = String.valueOf(i);
          }
          }
          } else if (str1.length() < num) {
          for (int n = 0; n < (num - str1.length()); n++) {
          str = str + "0";
          }
          }
          }
          return str;
          }
          public static void main(String[] args) {
          test test=new test();
          System.out.println(test.RoundOf(String.valueOf(3.15965), 2));
          }
          }  回復(fù)  更多評論
            

          # re: JAVA四舍五入(小數(shù)點后保留兩位數(shù)字)[自己總結(jié)] 2009-04-16 11:17 重慶理工小子
          我這里沒有用.作為分隔符,而是使用了indexof方法分別取.前后的值。  回復(fù)  更多評論
            

          # re: JAVA四舍五入(小數(shù)點后保留兩位數(shù)字)[自己總結(jié)][未登錄] 2011-10-22 13:40 bigfish
          /**注意,這里用.作為分隔符是失效的,不知道為什么,所以采用替換的辦法*/
          st=st.replace(".", "_");
          String []st_arr=st.split("_");

          此處不用這么麻煩,
          直接
          st=st.replace("\\.");即可  回復(fù)  更多評論
            

          主站蜘蛛池模板: 隆德县| 东丽区| 凤台县| 科尔| 古田县| 宽城| 青铜峡市| 织金县| 延川县| 仙桃市| 三亚市| 蒙山县| 肥乡县| 水富县| 巴林左旗| 天祝| 崇仁县| 武强县| 余庆县| 延庆县| 新郑市| 甘肃省| 天长市| 遵义市| 关岭| 崇礼县| 揭西县| 和田县| 凉山| 历史| 阿鲁科尔沁旗| 聂荣县| 长宁县| 仪陇县| 武陟县| 红安县| 桦甸市| 临城县| 舟曲县| 百色市| 绥宁县|