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

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

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

    使用Hashtable對字符串進(jìn)行碰撞-ZT

    Posted on 2007-07-30 16:36 my 閱讀(1379) 評論(0)  編輯  收藏 所屬分類: 個人收藏
    使用Hashtable對字符串進(jìn)行碰撞

    1.在一些字符串?dāng)?shù)組中,常會有重復(fù)的記錄,比如手機(jī)號碼,我們可以通過Hashtable來對其進(jìn)行過濾

    public String[] checkArray(String[] str)...{
    Hashtable<String, String> hash=new Hashtable<String, String>();

    for(int i=0;i<str.length;i++)...{
    if(!hash.containsKey(str[i])) //測試指定對象是否為此哈希表中的鍵
    hash.put(str[i], str[i]);
    }

    Enumeration enumeration=hash.keys(); //返回此哈希表中的鍵的枚舉
    String[] str_new=new String[hash.size()];
    int i=0;

    while(enumeration.hasMoreElements())...{
    str_new[i]=enumeration.nextElement().toString();
    i++;
    }
    return str_new;
    }
    示例:
    String[] mobile={"13811071500","13811071500","13811071501","13811071503","13811071501"};
    mobile=checkArray(mobile);
    for(int i=0;i<mobile.length;i++)
    System.out.println(mobile[i]);
    輸出結(jié)果為:
    13811071503
    13811071501
    13811071500

      2.A,B均為字符串?dāng)?shù)組,找出在A中存在,而在B中不存在的字符串
    public String[] compareArray(String[] A,String[] B){
    Hashtable<String, String> hash=new Hashtable<String, String>();
    Hashtable<String, String> hash_new=new Hashtable<String, String>();

    for(int i=0;i<B.length;i++)
    hash.put(B[i], B[i]);

    for(int i=0;i<A.length;i++){
    if(!hash.containsKey(A[i]))
    hash_new.put(A[i], A[i]);
    }

    String[] C=new String[hash_new.size()];
    int i=0;
    Enumeration enumeration=hash_new.keys();

    while(enumeration.hasMoreElements()){
    C[i]=enumeration.nextElement().toString();
    i++;
    }
    return C;
    }
    示例:
    String[] mobile1={"13811071500","13811071501","13811071502","13811071503","13811071504"};
    String[] mobile2={"13811071500","13811071505","13811071502","13811071506","13811071504"};
    String[] mobile3=compareArray(mobile1,mobile2);
    for(int i=0;i<mobile3.length;i++)
    System.out.println(mobile[i]);
    輸出結(jié)果:
    13811071503
    13811071501
    存在的問題:
    每次都是倒序,可以再對程序稍加改動,變成正序。

      3.將一個字符串?dāng)?shù)組中某一個特定的字符串過濾掉

    /** *//**檢驗(yàn)一個字符串?dāng)?shù)組,若包含某一特定的字符串,則將該字符串從數(shù)組中刪
    除,返回剩余的字符串?dāng)?shù)組
    * @param str_array 字符串?dāng)?shù)組
    * @param str_remove 待刪除的字符串
    * @return 過濾后的字符串
    */
    public String[] removeStrFromArray(String[] str_array,String
    str_remove)...{
    Hashtable<String, String> hash=new Hashtable<String, String>();
    for(int i=0;i<str_array.length;i++)...{
    if(!str_array[i].equals(str_remove))
    hash.put(str_array[i], str_array[i]);
    }
    //生成一個新的數(shù)組
    String[] str_new=new String[hash.size()];
    int i=0;
    Enumeration enumeration=hash.keys();
    while(enumeration.hasMoreElements())...{
    str_new[i]=enumeration.nextElement().toString();
    i++;
    }
    return str_new;
    }

    posts - 63, comments - 45, trackbacks - 0, articles - 99

    Copyright © my

    主站蜘蛛池模板: 在线观看免费中文视频| 国产免费资源高清小视频在线观看| 亚洲人成影院在线高清| 日韩电影免费在线观看视频| 国产高潮久久免费观看| 久久青青草原亚洲av无码app| 免费网站看v片在线香蕉| 在线观看黄片免费入口不卡| 亚洲国产美女福利直播秀一区二区 | 亚洲狠狠狠一区二区三区| 日本不卡视频免费| 久久er国产精品免费观看2| 亚洲色中文字幕在线播放| 亚洲综合另类小说色区色噜噜| 1000部国产成人免费视频| 免费的黄网站男人的天堂| 911精品国产亚洲日本美国韩国| 国产乱色精品成人免费视频| 亚洲毛片在线免费观看| 狠狠躁狠狠爱免费视频无码| 亚洲成人激情小说| 久久久久亚洲AV成人片| 亚洲精品无码久久不卡| 在线免费观看污网站| 免费A级毛片无码A∨中文字幕下载| 国产精品成人亚洲| 亚洲成人高清在线观看| 综合亚洲伊人午夜网| 国产精品嫩草影院免费| 国产四虎免费精品视频| 国产自国产自愉自愉免费24区| 亚洲av午夜国产精品无码中文字| 久久亚洲日韩精品一区二区三区| 亚洲人成网站色在线入口| 成人免费毛片观看| 免费视频专区一国产盗摄| 久久99精品国产免费观看| 三年片免费高清版 | 国产高清对白在线观看免费91| 亚洲欧洲专线一区| 亚洲狠狠ady亚洲精品大秀|