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

2021-09-22 03:12:53 字數 996 閱讀 9655

最近專案中需要對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的特性進行去重又不打亂順序呢?試了一...