Menu
CoddyTech
flag Ar iconالعربيةdown icon

المجموعات الجزئية والشاملة

جزء من قسم المنطق وتدفق التنفيذ في رحلة Java على Coddy. الدرس 33 من 59.

المجموعة الجزئية هي مجموعة يكون كل عنصر فيها موجودًا أيضًا في مجموعة أخرى. والمجموعة الفائقة هي مجموعة تحتوي على جميع عناصر مجموعة أخرى.

أولًا، أنشئ مجموعتي HashSet:

HashSet<String> setA = new HashSet<>();
setA.add("apple");
setA.add("banana");
HashSet<String> setB = new HashSet<>();
setB.add("apple");
setB.add("banana");
setB.add("cherry");

استخدم الطريقة containsAll():

boolean isSubset = setB.containsAll(setA);
System.out.println("setA is a subset of setB: " + isSubset);
// الناتج: setA is a subset of setB: true

وبالمثل، فإن setB مجموعة شاملة لـ setA لأنها تحتوي على كل عنصر من عناصر setA.

challenge icon

التحدي

سهل

أنشئ طريقة باسم <strong>checkSubsetSuperset</strong> تأخذ مجموعتين من نوع HashSet للسلاسل النصية كمدخلات:

  • setA وsetB

يجب أن تقوم الطريقة بما يلي:

  1. تحقّق مما إذا كانت setA مجموعة جزئية من setB باستخدام containsAll()، واطبع:

    setA is a subset of setB: <true/false>
  2. تحقّق مما إذا كانت setB مجموعة شاملة لـ setA (هذا هو التحقّق نفسه)، واطبع:

    setB is a superset of setA: <true/false>

جرّب بنفسك

import java.util.HashSet;
import java.util.Scanner;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;

public class Main {
    public static void checkSubsetSuperset(HashSet<String> setA, HashSet<String> setB) {
        // اكتب الكود الخاص بك هنا
    }
    
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        // اقرأ سلسلة JSON الخاصة بـ setA (مثلًا: ["apple","banana"])
        String setAString = scanner.nextLine();
        // اقرأ سلسلة JSON الخاصة بـ setB (مثلًا: ["apple","banana","cherry"])
        String setBString = scanner.nextLine();
        
        Type setType = new TypeToken<HashSet<String>>(){}.getType();
        HashSet<String> setA = new Gson().fromJson(setAString, setType);
        HashSet<String> setB = new Gson().fromJson(setBString, setType);
        
        checkSubsetSuperset(setA, setB);
    }
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس المنطق وتدفق التنفيذ

تدرّب بنفسك: مترجم Java عبر الإنترنت