<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    zhyiwww
    用平實的筆,記錄編程路上的點點滴滴………
    posts - 536,comments - 394,trackbacks - 0
    轉載 自http://www.tkk7.com/fastzch/archive/2006/04/11/40507.html?Pending=true#Post


    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();
    簡簡單單的三行代碼即可搞定,無論是從程序的可讀性、優雅性還是效率方面都有很好的提升。
    擴展:你同時還可以運用上面的方法還判斷三個字符串是否相等(可進一步擴展至多個,但是似乎不太有實際意義),例程如下:
    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


    |----------------------------------------------------------------------------------------|
                               版權聲明  版權所有 @zhyiwww
                引用請注明來源 http://www.tkk7.com/zhyiwww   
    |----------------------------------------------------------------------------------------|
    posted on 2006-04-13 09:38 zhyiwww 閱讀(5218) 評論(5)  編輯  收藏 所屬分類: java basic

    FeedBack:
    # re: 去掉一個字符串數組中的重復項[未登錄]
    2007-06-18 15:51 | 木木
    使用set比較偷懶哦  回復  更多評論
      
    # re: 去掉一個字符串數組中的重復項
    2009-03-27 11:18 | sss
    List list = Arrays.asList(s);
    Set set = new HashSet(list);
    rid = (String[])set.toArray(new String[0]);
    類型轉換的時候更好一些!  回復  更多評論
      
    # re: 去掉一個字符串數組中的重復項
    2012-05-21 14:44 | 在橋邊
    @sss
    不錯。直接用toArray會出錯。  回復  更多評論
      
    # re: 去掉一個字符串數組中的重復項
    2013-09-16 14:34 | 王以順
    string[] name = typename.ToString().Split(' ');
    //用雙循環進行對比比出相同的項
    for (int i = 0; i < name.Length; i++)
    {
    for (int j = name.Length - 1; j > i; j--)
    {
    if (name[i] == name[j])
    {
    name[j] = "";
    }
    }
    row["tyname"] += name[i]+" ";
    }  回復  更多評論
      
    # re: 去掉一個字符串數組中的重復項
    2013-09-27 10:40 | 魏磊
    @王以順
    請問是王以順是天津的么?曾經高中的同學和你名字一樣  回復  更多評論
      
    主站蜘蛛池模板: 四虎在线成人免费网站| 成人免费一区二区三区在线观看| av免费不卡国产观看| 免费人成视网站在线观看不卡| 久久亚洲一区二区| 亚洲AV无码一区二区三区久久精品| 在线观看片免费人成视频播放| 成人免费毛片观看| 久久久久亚洲精品影视| 亚洲AV无码一区二区大桥未久| 国产成人AV片无码免费| 国产又黄又爽又刺激的免费网址| 亚洲人成在线观看| 免费人妻精品一区二区三区| 欧洲一级毛片免费| 亚洲人色婷婷成人网站在线观看| 亚洲熟妇AV一区二区三区宅男| 免费福利在线视频| 亚洲第一页综合图片自拍| 亚洲av无码久久忘忧草| 黄页免费在线观看| 免费成人av电影| 久久亚洲国产最新网站| 99视频在线免费| 国产亚洲精品不卡在线| 亚洲AV无码一区二区乱子仑| 国产2021精品视频免费播放| 亚洲美女又黄又爽在线观看| 亚洲avav天堂av在线网毛片| 国产成人福利免费视频| 久久精品国产亚洲沈樵| 日本特黄特色AAA大片免费| 免费av欧美国产在钱| 亚洲一区二区三区电影| 男女一进一出抽搐免费视频| 日本大片在线看黄a∨免费| 亚洲av无码专区在线| 真实国产乱子伦精品免费| 国产av天堂亚洲国产av天堂| 一级毛片a女人刺激视频免费| 日本一线a视频免费观看|