شرح Java

واجهة الـ Stream

ما هو الـ Stream؟

سلسلة معالجة للبيانات بأسلوب دالي معبّر — تصفية وتحويل وتجميع دون حلقات يدوية.

import java.util.List;
import java.util.stream.Collectors;

List<Integer> numbers = List.of(1, 2, 3, 4, 5, 6);

filter — تصفية

List<Integer> evens = numbers.stream()
  .filter(n -> n % 2 == 0)
  .collect(Collectors.toList());   // [2, 4, 6]

map — تحويل

List<Integer> squares = numbers.stream()
  .map(n -> n * n)
  .collect(Collectors.toList());   // [1, 4, 9, 16, 25, 36]

السلاسل

int sum = numbers.stream()
  .filter(n -> n % 2 == 0)
  .mapToInt(Integer::intValue)
  .sum();                           // 12

دوال شائعة

الدالةالوظيفة
filterإبقاء ما يحقّق الشرط
mapتحويل كل عنصر
sortedترتيب
distinctحذف المكرّر
countالعدد
reduceدمج في قيمة واحدة
forEachتنفيذ على كل عنصر

مرجع الدالة (Method Reference)

names.stream().forEach(System.out::println);

💡 الـ Stream لا يعدّل المصدر — يعيد نتيجة جديدة.

🎯 التالي: خلاصة مسار Java.