程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> Java中ArrayList的應用辦法簡略引見

Java中ArrayList的應用辦法簡略引見

編輯:關於JAVA

Java中ArrayList的應用辦法簡略引見。本站提示廣大學習愛好者:(Java中ArrayList的應用辦法簡略引見)文章只能為提供參考,不一定能成為您想要的結果。以下是Java中ArrayList的應用辦法簡略引見正文


ArrayList沒有封裝好的去重辦法,好比關於一個[2, 5, 2, 3, 2, 4]的ArrayList,我要去除個中的反復的元素,
我也不想把語句也這麼長,也不想用for輪回的辦法去重,那末可以先斟酌把ArrayList轉化為一個暫時的HashSet,再把這個暫時的HashSet轉化回ArrayList,由於HashSet外面的元素是弗成反復的嘛!至於甚麼是ArrayList與HashSet,在《詳解java中的Collections類》曾經說得很清晰了,這裡不再贅述。
 你可以如許寫: 
HashSet<Integer> hashset_temp = new HashSet<Integer>(arraylist);
arraylist  = new ArrayList<Integer>(hashset_temp);
也能夠寫得加倍簡練,連誰人暫時的hashset_temp變量都不要了:
arraylist  = new ArrayList<Integer>(new HashSet<Integer>(arraylist));
以後,ArrayList的元素變成[2, 3, 4, 5]

上面再為年夜家分享ArrayList去重的兩種辦法

 //去反復辦法一

    private ArrayList RemoveDuplicateNum(ArrayList list)
    {
      list.Sort();
      for (int i = 0; i < list.Count - 1; i++)
      {
        if (list[i].Equals(list[i + 1]))
        {
          list.RemoveAt(i);//去反復項 
          i--;
        }
      }
      return list;

    }

//去反復辦法二

    private ArrayList RemoveSame(ArrayList list)
    {
      //下面寫的那句是過剩的,這個是終究的 
      for (int i = 0; i < list.Count - 1; i++)
      {
        for (int j = i + 1; j < list.Count; j++)
        {
          if (list[i].Equals(list[j]))
          {
            list.RemoveAt(j);
            j--;
          }
        }
      }
      return list;
    }

以上就是本文的全體內容,願望對年夜家的進修有所贊助,也願望年夜家多多支撐。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved