<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://m.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://m.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 | 魏磊
    @王以順
    請問是王以順是天津的么?曾經高中的同學和你名字一樣  回復  更多評論
      
    主站蜘蛛池模板: 亚洲国产精品一区二区九九| 美女被免费视频网站a国产| 中文字幕专区在线亚洲| 日韩国产欧美亚洲v片 | 中文字幕人成人乱码亚洲电影| 立即播放免费毛片一级| 免费人成视频在线观看不卡| 国产成人 亚洲欧洲| 亚洲av午夜成人片精品电影| 在线播放国产不卡免费视频| 中文字幕日韩亚洲| 麻豆精品不卡国产免费看| 亚洲精品国产成人99久久| 91成人免费在线视频| 亚洲一卡2卡三卡4卡无卡下载| 青青青国产免费一夜七次郎| 看一级毛片免费观看视频| 亚洲午夜精品第一区二区8050| 中国一级特黄高清免费的大片中国一级黄色片| 亚洲综合国产精品第一页| 中文字幕无码免费久久| 亚洲精品中文字幕乱码影院| 色妞WWW精品免费视频| 阿v免费在线观看| 亚洲精品夜夜夜妓女网| 18禁美女黄网站色大片免费观看| 中文字幕亚洲情99在线| 亚洲国产人成精品| 午夜视频在线免费观看| 亚洲成_人网站图片| 亚洲精品国产精品国自产观看 | 久久青草免费91观看| 一本色道久久88—综合亚洲精品 | 亚洲人成人网站色www| 亚洲免费网站在线观看| 精品国产亚洲AV麻豆| 99在线免费视频| 亚洲欧洲日本国产| 亚洲国产精品13p| 18以下岁毛片在免费播放| 国产亚洲欧美在线观看|