去除List集合中的重複值(四種好用的方法)

2021-08-22 14:48:29 字數 861 閱讀 6050

最近專案中需要對list集合中的重複值進行處理,大部分是採用兩種方法,一種是用遍歷list集合判斷後賦給另乙個list集合,一種是用賦給set集合再返回給list集合。 

但是賦給set集合後,由於set集合是無序的,原先的順序就打亂了。所以我又想著能不能用set的特性進行去重又不打亂順序呢? 

試了一下,也是可以的,幾種方法在不同情況下都有各自的優勢。現在將**寫出來,比較一下。

//set集合去重,不打亂順序

public static void main(string args)

}system.out.println( "去重後的集合: " + newlist);

}

//遍歷後判斷賦給另乙個list集合

public static void main(string args)

}system.out.println( "去重後的集合: " + newlist);

}

//set去重

public static void main(string args)

//set去重(縮減為一行)

public static void main(string args)

hashset不進行排序,還有一種方法是用treeset,去重並且按照自然順序排列,將hashset改為treeset就可以了。(原本的順序是改變的,只是按照字母表順序排列而已)。

//去重並且按照自然順序排列

list newlist = new arraylist(new treeset(list));

去除List集合中的重複值(四種好用的方法)

最近專案中需要對list集合中的重複值進行處理,大部分是採用兩種方法,一種是用遍歷list集合判斷後賦給另乙個list集合,一種是用賦給set集合再返回給list集合。但是賦給set集合後,由於set集合是無序的,原先的順序就打亂了。所以我又想著能不能用set的特性進行去重又不打亂順序呢?試了一下,...

去除List集合中的重複值

最近專案中需要對list集合中的重複值進行處理,大部分是採用兩種方法,一種是用遍歷list集合判斷後賦給另乙個list集合,一種是用賦給set集合再返回給list集合。但是賦給set集合後,由於set集合是無序的,原先的順序就打亂了。所以我又想著能不能用set的特性進行去重又不打亂順序呢?試了一下,...

去除List集合中的重複值 去除陣列的重複值

一 最近專案中需要對list集合中的重複值進行處理,大部分是採用兩種方法,一種是用遍歷list集合判斷後賦給另乙個list集合,一種是用賦給set集合再返回給list集合。但是賦給set集合後,由於set集合是無序的,原先的順序就打亂了。所以我又想著能不能用set的特性進行去重又不打亂順序呢?試了一...