Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Chương trình Java tính hiệu hai Set

Trong bài này, chúng ta sẽ hiểu cách tính hiệu hai Set. Set là Collection không chứa phần tử trùng lặp, mô hình hóa tập hợp toán học.

Dưới đây là minh họa:

Giả sử đầu vào:

Tập 1: [90, 75, 60, 45]
Tập 2: [90, 60]

Đầu ra mong muốn:

Sau khi trừ hai tập: [75, 45]

Thuật toán

Bước 1 - BẮT ĐẦU
Bước 2 - Khai báo...
Bước 3 - Định nghĩa giá trị.
Bước 4 - Tạo 2 Set, thêm phần tử bằng 'add'.
Bước 5 - Hiển thị Set ra console.
Bước 6 - Tính hiệu tập dùng 'removeAll'.
Bước 7 - Hiển thị hiệu hai tập.
Bước 8 - KẾT THÚC

Ví dụ 1

Gom thao tác dưới hàm 'main'.

import java.util.HashSet;
import java.util.Set;

public class Demo {
    public static void main(String[] args) {
        System.out.println("Các gói cần thiết đã được import");
        Set<Integer> input_set_1 = new HashSet<>();
        input_set_1.add(45);
        input_set_1.add(60);
        input_set_1.add(75);
        input_set_1.add(90);
        System.out.println("Tập 1 định nghĩa: " + input_set_1);
        Set<Integer> input_set_2 = new HashSet<>();
        input_set_2.add(60);
        input_set_2.add(90);
        System.out.println("Tập 2 định nghĩa: " + input_set_2);
        input_set_1.removeAll(input_set_2);
        System.out.println("\nSau khi trừ hai tập:\n" + input_set_1);
    }
}

Kết quả

Các gói cần thiết đã được import
Tập 1 định nghĩa: [90, 75, 60, 45]
Tập 2 định nghĩa: [90, 60]
Sau khi trừ hai tập:
[75, 45]

Ví dụ 2

Đóng gói thao tác vào hàm thể hiện OOP.

import java.util.HashSet;
import java.util.Set;

public class Demo {
    static void subtract(Set<Integer> input_set_1, Set<Integer> input_set_2){
        input_set_1.removeAll(input_set_2);
        System.out.println("\nSau khi trừ hai tập:\n" + input_set_1);
    }
    public static void main(String[] args) {
        System.out.println("Các gói cần thiết đã được import");
        Set<Integer> input_set_1 = new HashSet<>();
        input_set_1.add(45);
        input_set_1.add(60);
        input_set_1.add(75);
        input_set_1.add(90);
        System.out.println("Tập 1 định nghĩa: " + input_set_1);
        Set<Integer> input_set_2 = new HashSet<>();
        input_set_2.add(60);
        input_set_2.add(90);
        System.out.println("Tập 2 định nghĩa: " + input_set_2);
        subtract(input_set_1, input_set_2);
    }
}

Kết quả

Các gói cần thiết đã được import
Tập 1 định nghĩa: [90, 75, 60, 45]
Tập 2 định nghĩa: [90, 60]
Sau khi trừ hai tập:
[75, 45]