waysun一路陽光

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

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 ::  :: 管理 ::
            167 隨筆 :: 1 文章 :: 64 評(píng)論 :: 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一米陽光 閱讀(5595) 評(píng)論(3)  編輯  收藏 所屬分類: JAVA源碼常用工具類

          評(píng)論

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

          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ù)  更多評(píng)論
            

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

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

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

          主站蜘蛛池模板: 包头市| 绩溪县| 麟游县| 鄯善县| 永安市| 乐山市| 台北市| 通榆县| 漳平市| 白城市| 晋州市| 怀来县| 金塔县| 宣威市| 湘西| 榆林市| 房产| 呼图壁县| 尉犁县| 海丰县| 岱山县| 隆子县| 崇礼县| 崇左市| 砀山县| 泸定县| 微博| 肥乡县| 江永县| 宁陕县| 千阳县| 河西区| 正镶白旗| 临沂市| 仁化县| 湛江市| 泌阳县| 建宁县| 海兴县| 夏河县| 永寿县|