Java陣列去重
阿新 • • 發佈:2020-07-16
Java陣列去重
將陣列轉換成集合,利用集合進行去重
package com.mybatis.demo.exercise; import java.util.*; /** * * @author yinsenxin */ public class ArrayRemoveSame { public static void main(String[] args) { // 一, 定義一個基本型別的陣列 int [] array = {11,22,33,44,11,22,33,44,1,2}; // 1.使用HashSet ps:無法保證元素的有序性Set<Integer> set = new HashSet<>(); for (int i = 0; i < array.length; i++) { set.add(array[i]); } System.out.println("使用HashSet去重: "+ set); // 2.使用LinkedHashSet ps:可以保證新增到集合的順序 Set<Integer> sets = new LinkedHashSet<>();for (int i = 0; i < array.length; i++) { sets.add(array[i]); } System.out.println("使用LinkedHashSet去重: "+ sets); // 3.將陣列轉換成List 通過contains判斷進行去重 List<Integer> list = new ArrayList<>(); for (int i = 0; i < array.length; i++) {if (!list.contains(array[i])){ list.add(array[i]); } } System.out.println("使用List去重: "+list); // 二, 當物件型別的陣列 例如: String Integer ...可以使用Arrays.asList(T... t)直接將陣列轉換成集合 String [] str = {"abc", "abc", "ABC", "ABC" ,"xyz"}; List<String> list1 = Arrays.asList(str); Set<String> set1 = new LinkedHashSet<>(list1); System.out.println(set1); } }