رياضيات - تقاطع الـ HashSet
جزء من قسم Logic & Flow في رحلة Java على Coddy — الدرس 30 من 59.
إن تقاطع مجموعتين هو مجموعة جديدة تحتوي فقط على العناصر الموجودة في كلتا المجموعتين. في لغة جافا، يمكنك حساب التقاطع باستخدام الدالة retainAll().
أولاً، قم بإنشاء مجموعتي HashSet جديدتين:
HashSet<Integer> set1 = new HashSet<>();
set1.add(1);
set1.add(2);
HashSet<Integer> set2 = new HashSet<>();
set2.add(2);
set2.add(3);ستبدأ هذه المجموعة الجديدة بجميع العناصر من المجموعة الأولى.
HashSet<Integer> intersectionSet = new HashSet<>(set1);بعد ذلك، احتفظ فقط بالعناصر الموجودة أيضاً في المجموعة الثانية:
استخدم طريقة retainAll().
intersectionSet.retainAll(set2);
System.out.println("Intersection: " +
intersectionSet);
// الناتج: [2]التحدي
سهلقم بإنشاء دالة باسم <strong>intersectionSets</strong> تأخذ اثنين من HashSets من الأعداد الصحيحة كمدخلات، وتحسب تقاطعهما، وتطبعه بالتنسيق التالي:
Intersection: [2]
ورقة مرجعية
يحتوي تقاطع مجموعتين فقط على العناصر الموجودة في كلتا المجموعتين. استخدم retainAll() لحساب التقاطع:
HashSet<Integer> set1 = new HashSet<>();
set1.add(1);
set1.add(2);
HashSet<Integer> set2 = new HashSet<>();
set2.add(2);
set2.add(3);
// إنشاء مجموعة جديدة تحتوي على عناصر من المجموعة الأولى
HashSet<Integer> intersectionSet = new HashSet<>(set1);
// الاحتفاظ فقط بالعناصر الموجودة أيضاً في المجموعة الثانية
intersectionSet.retainAll(set2);
System.out.println("Intersection: " + intersectionSet);
// المخرجات: [2]جرّب بنفسك
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 intersectionSets(HashSet<Integer> set1, HashSet<Integer> set2) {
// اكتب كودك هنا
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// قراءة سلسلة JSON للمجموعة الأولى (مثلاً، [1,2])
String set1String = scanner.nextLine();
// قراءة سلسلة JSON للمجموعة الثانية (مثلاً، [2,3])
String set2String = scanner.nextLine();
Type setType = new TypeToken<HashSet<Integer>>(){}.getType();
HashSet<Integer> set1 = new Gson().fromJson(set1String, setType);
HashSet<Integer> set2 = new Gson().fromJson(set2String, setType);
intersectionSets(set1, set2);
}
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Logic & Flow
1المصفوفات متعددة الأبعاد
أساسيات المصفوفات ثنائية الأبعادالوصول إلى عناصر المصفوفات ثنائية الأبعادالحلقات المتداخلة مع المصفوفات ثنائية الأبعادمراجعة - المصفوفات ثنائية الأبعادجمع وطرح المصفوفاتالمصفوفات المتعرجة (Jagged Arrays)المصفوفات ثلاثية الأبعاد وما بعدهاأنماط المصفوفات ثنائية الأبعاد الشائعةمراجعة - كل شيء عن المصفوفات2HashMap الجزء الأول
ما هو الـ HashMap؟تعريف الـ HashMapالوصول إلى القيمالتحقق من وجود المفتاحتعديل القواميسملخص - HashMap5HashSet الجزء الثاني
رياضيات - اتحاد الـ HashSetsرياضيات - تقاطع الـ HashSetرياضيات - فرق المجموعاترياضيات - الفرق المتناظرالمجموعات الجزئية والشاملةالتكرار عبر المجموعات3HashMap الجزء الثاني
دوال HashMapالتكرار باستخدام keySet()التكرار باستخدام entrySet()HashMap متداخلمراجعة - إدارة المستودعمراجعة - عمليات HashMap6التحكم المتقدم في تدفق البرنامج
العبارات المعنونةتعبير Switchمطابقة الأنماطجمل الحمايةمراجعة - تدفق التحكم