Sobes.tech
Senior

Методи reduce чӣ мекунад?

sobes.tech AI

Ҷавоб аз AI

Метод reduce дар Java барои коркарди пайдарпайи унсурҳои ҷараён бо ҷамъоварии натиҷа истифода мешавад. Он ду параметр мегирад:

  • акумулятор (функсияи дукарата), ки натиҷаи ҳозираро бо унсури оянда мепайвандад;
  • (ихтиёрӣ) арзиши ибтидоии барои акумулятор.

Дар охир, reduce ҷараёни унсурҳоро ба як арзиш, масалан, ҷамъ, зарб ё пайвандкуниро кам мекунад.

Масали ҷамъ кардани шуморҳо бо reduce:

import java.util.Arrays;
import java.util.List;

public class ReduceExample {
    public static void main(String[] args) {
        List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
        int sum = numbers.stream()
                         .reduce(0, (acc, x) -> acc + x);
        System.out.println("Ҷам: " + sum); // Натиҷа: Ҷам: 15
    }
}

Агар арзиши ибтидоӣ нишон дода нашуда бошад, reduce натиҷа медиҳад Optional<T>, зеро ҷараён метавонад холӣ бошад.