1. 程式人生 > >Java中如何判斷一個集合中的一個元素不在另一個集合中?把不存在的元素移除

Java中如何判斷一個集合中的一個元素不在另一個集合中?把不存在的元素移除

判斷一個元素在集合中很容易,只需要遍歷這個集合,然後與每個值進行比較,如果有相等的,那麼就存在在集合中,然後反過來,就是不存在集合中的,找到它好像挺容易,但是寫起程式碼來好像有點繞,那麼,現在就把它寫出來:

List<Integer> aList = new ArrayList<Integer>();

List<Integer> bList = new ArrayList<Integer>();

for(int i = 0 ; i<5;I++){

aList.add(i); // 首先在集合aList中新增5個整數

};

for(int i = 0 ; i < 4; i ++){

bList.add(i); // 在bList中新增0-3的整數

很顯然這裡在b集合中就只有4不存在在a集合中,所以要把他移除。

那麼先找出他來:

boolean flag = true ;

for(int i = 0 ; i < bList.size() ; i++){

for (int j = 0; j < aList.size() ; j ++ ){

if ( bList.get(i) == aList.get(j)){

flag = false; // 相等則說明存在

}

}

// 如果遍歷完,仍沒有相等的,則說明不存在,flag仍然為真

if(flag){

bList.remove(i); // 移除

}

}