Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

Java ลบรายการซ้ำใน ArrayList แบบง่ายไม่ยุ่งยาก

โพสต์นี้ให้ตัวอย่างวิธีลบรายการซ้ำ (duplicate items) จาก ArrayList ใน Java

ลบ Strings ซ้ำจาก ArrayList

เนื่องจาก Set ไม่สามารถเก็บ duplicate elements ได้ เราสามารถ instantiate Set object โดยส่ง ArrayList ที่มี duplicates เข้าไปเป็น parameter

ตัวอย่าง:

import java.util.ArrayList; import java.util.LinkedHashSet; import java.util.Set; public class RemoveDuplicatesFromArrayList { public static void main(String[] args) { ArrayList pets = new ArrayList<>(); pets.add("cat"); pets.add("dog"); pets.add("cat"); pets.add("hamster"); System.out.println(pets); Set hashSet = new LinkedHashSet(pets); ArrayList removedDuplicates = new ArrayList(hashSet); System.out.println(removedDuplicates); } }

Output:

[cat, dog, cat, hamster] [cat, dog, hamster]
  • How to compare two ArrayLists in Java
  • How to loop through an ArrayList in Java
  • How to convert list to array in Java

ลบ Integers ซ้ำจาก List

เช่นเดียวกัน เราสามารถใช้ methodology เดียวกันลบ duplicate integers

import java.util.*; public class RemoveDuplicatesFromArrayList { public static void main(String[] args) { List numbers = Arrays.asList(1,2,2,2,3,5); System.out.println(numbers); Set hashSet = new LinkedHashSet(numbers); ArrayList removedDuplicates = new ArrayList(hashSet); System.out.println(removedDuplicates); } }

Output:

[1, 2, 2, 2, 3, 5] [1, 2, 3, 5]

ลบ Duplicates จาก List ด้วย Java 8 Lambdas

import java.util.*; import java.util.stream.Collectors; public class RemoveDuplicatesFromArrayList { public static void main(String[] args) { List numbers = Arrays.asList(1,2,2,2,3,5); System.out.println(numbers); List removedDuplicates = numbers.stream() .distinct() .collect(Collectors.toList()); System.out.println(removedDuplicates); } }

Output:

[1, 2, 2, 2, 3, 5] [1, 2, 3, 5]