wangflood

          精心維護一個技術blog,為了工作,也是愛好。

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            14 Posts :: 19 Stories :: 8 Comments :: 0 Trackbacks
          框架里有個方法(Object...params) params的參數類型分為String ,Integer和Double.后續一系列悲催代碼就是這樣形成的。

          在這個方法里面,取得參數時,得作類型轉換。所以必須按約定的順序轉換,比如順序是(String,Integer,Integer).取參很丑陋吧。

          給這個方法傳參的時候,需要確定好類型,比如是從xml中讀取出這組參數,那么就是個Sting[],類型,直接傳參,取參的時候會報錯。所以投進去的時候,必須以確定的類型。
          以下這段代碼就是這么干的。
          import java.util.Arrays;

          public class TestDoubleParse {

              
          public static void main(String[] args) {
                  String[] strs 
          = new String[] { "EMA""14""0.001" };
                  Object[] arg 
          = new Object[3];
                  
          for (int i = 0; i < strs.length; i++) {
                      
          try {
                          
          int temp = Integer.parseInt(strs[i]);
                          arg[i] 
          = temp;
                      } 
          catch (NumberFormatException e) {
                          
          try {
                              
          double d = Double.parseDouble(strs[i]);
                              arg[i] 
          = d;
                          } 
          catch (NumberFormatException nfe) {
                              arg[i] 
          = strs[i];
                          }

                      }

                  }
                  System.out.println(Arrays.toString(arg));
              }
          }

          try{try{}}的作用就相當于另一種形式的if了。很無奈,悲劇繼續重演。。。。。

          posted on 2011-03-30 17:07 wangflood 閱讀(185) 評論(0)  編輯  收藏 所屬分類: java
          主站蜘蛛池模板: 普宁市| 宜丰县| 图木舒克市| 宾阳县| 金山区| 武城县| 铜梁县| 广宗县| 翁牛特旗| 平舆县| 亳州市| 沙洋县| 郸城县| 东乡县| 普陀区| 景宁| 陇西县| 平顶山市| 九龙坡区| 勃利县| 聂拉木县| 宜城市| 景东| 怀集县| 大厂| 东丰县| 年辖:市辖区| 普宁市| 宁蒗| 康保县| 开化县| 铜川市| 太保市| 牙克石市| 德化县| 姚安县| 镇安县| 安国市| 呼图壁县| 裕民县| 繁峙县|