waysun一路陽(yáng)光

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

            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(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一米陽(yáng)光 閱讀(5610) 評(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)論
            

          主站蜘蛛池模板: 安宁市| 连山| 左权县| 泾川县| 佛坪县| 芦溪县| 陆良县| 大英县| 朝阳市| 三穗县| 塘沽区| 都昌县| 金乡县| 塔城市| 调兵山市| 荥阳市| 遂平县| 称多县| 鄂尔多斯市| 桐柏县| 闽侯县| 富蕴县| 平昌县| 黄石市| 迁西县| 民乐县| 通山县| 黄骅市| 绵竹市| 榆树市| 陆河县| 顺义区| 茂名市| 新乐市| 招远市| 新沂市| 重庆市| 阳城县| 凌源市| 新泰市| 延津县|