隨筆-1  評論-0  文章-1  trackbacks-0
          1、去掉一個字符串數組中的重復項:(2006.04.11.)
          原來采用的方法:
          ?1?String[]?rid?=?request.getParameterValues("noattRid");
          ?2?//需要用一個臨時的變量把過濾后的結果這個存起來
          ?3?String[]?ridFiltered?=?new?String[rid.length];
          ?4?????????int?index?=?0;
          ?5?????????for?(int?i?=?0;?i?<?rid.length;?i++)?{
          ?6?????????????if?(!this.isExistString(ridFiltered,?rid[i])&&!rid[i].equals(""))?{
          ?7?????????????????ridFiltered[index++]?=?rid[i];
          ?8?????????????}
          ?9?????????}
          10?
          11?//還需要用一個方法來判斷在結果中是否存在此項,如下
          12??/**
          13??????*?用于查找某個字符串是否在一個字符串數組中
          14??????*?@param?dest?String[]
          15??????*?@param?str?String
          16??????*?return?boolean
          17??????*/
          18?
          19?????public?boolean?isExistString(String[]?dest,?String?str)?{
          20?????????boolean?flag?=?false;
          21?????????for?(int?i?=?0;?i?<?dest.length;?i++)?{
          22?????????????if?(str.equals(dest[i]))?{
          23?????????????????flag?=?true;
          24?????????????}
          25?????????}
          26?????????return?flag;
          27?????}

          看看,要多麻煩有多麻煩,來看看新方法:
          1?String[]?s?=?request.getParameterValues("noattRid");
          2?List?list?=?Arrays.asList(s);
          3?Set?set?=?new?HashSet(list);
          4//rid=(String?[])set.toArray();
          5 String[] temp = new String[set.size()];
          6 Iterator ite = set.iterator();
          7 for (int i = 0; ite.hasNext(); i++) {
          8??? temp[i] = (String) ite.next();
          9 }
          簡簡單單的幾行代碼即可搞定,無論是從程序的可讀性、優雅性還是效率方面都有很好的提升。
          擴展:你同時還可以運用上面的方法還判斷三個字符串是否相等(可進一步擴展至多個,但是似乎不太有實際意義),例程如下:
          1?String[]?s?=?{"one",?"two",?"two"};
          2?List?list?=?Arrays.asList(s);
          3?Set?set?=?new?HashSet(list);
          4?System.out.println(list.size()?==?set.size());?//?false

          form: http://www.aygfsteel.com/fastzch/archive/2006/04/11/40507.aspx
          posted on 2006-06-19 01:49 博客java 閱讀(528) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 惠来县| 天镇县| 徐闻县| 三明市| 鄱阳县| 喀喇沁旗| 曲水县| 莎车县| 湘阴县| 藁城市| 潜江市| 桦川县| 陕西省| 宁武县| 宜黄县| 铜鼓县| 札达县| 同德县| 方山县| 历史| 临漳县| 紫云| 灵台县| 左贡县| 三台县| 望城县| 通山县| 盖州市| 岫岩| 灵武市| 金堂县| 栾川县| 鹤壁市| 长岭县| 安宁市| 乌拉特后旗| 汽车| 漳平市| 佛山市| 泰来县| 淮滨县|