0Pricing
Java Academy · Pelajaran

Operasi Rentang dan Agregasi

range, sum, average, summaryStatistics.

Operasi Rentang dan Agregasi adalah pelajaran Java Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Java Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Java Academy mencakup 4 pelajaran total.

Menghasilkan Rentang

IntStream.range(start, end) menghasilkan bilangan bulat berurutan dari awal hingga, tetapi tidak termasuk, akhir.

import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {
        IntStream.range(0, 5).forEach(System.out::println);
    }
}

rangeClosed Menyertakan Akhir

IntStream.rangeClosed(start, end) menyertakan nilai terakhir, sehingga rangeClosed(1, 5) menghasilkan 1 hingga 5.

import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {
        int sum = IntStream.rangeClosed(1, 5).sum();
        System.out.println(sum);
    }
}

Menggantikan Perulangan Berbasis Indeks

Rentang merupakan pengganti yang rapi untuk perulangan for berbasis indeks saat melakukan iterasi pada posisi array.

import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {
        String[] names = {"a", "b", "c"};
        IntStream.range(0, names.length)
            .forEach(i -> System.out.println(i + ": " + names[i]));
    }
}

sum

sum menjumlahkan semua elemen dan mengembalikan hasil primitif.

import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {
        int total = IntStream.rangeClosed(1, 100).sum();
        System.out.println(total);
    }
}

average

average mengembalikan OptionalDouble karena stream mungkin kosong.

import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {
        double avg = IntStream.of(2, 4, 6, 8).average().getAsDouble();
        System.out.println(avg);
    }
}

min dan max

min dan max mengembalikan OptionalInt. Gunakan getAsInt jika Anda mengetahui bahwa stream tidak kosong.

import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {
        int hi = IntStream.of(3, 9, 1, 7).max().getAsInt();
        int lo = IntStream.of(3, 9, 1, 7).min().getAsInt();
        System.out.println(lo + " .. " + hi);
    }
}

count

count mengembalikan jumlah elemen sebagai long.

import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {
        long n = IntStream.rangeClosed(1, 50).filter(x -> x % 3 == 0).count();
        System.out.println(n);
    }
}

summaryStatistics

summaryStatistics menghitung jumlah, total, nilai minimum, rata-rata, dan nilai maksimum dalam satu kali lintasan, lalu mengembalikan IntSummaryStatistics.

import java.util.IntSummaryStatistics;
import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {
        IntSummaryStatistics stats = IntStream.of(5, 10, 15, 20).summaryStatistics();
        System.out.println(stats);
    }
}

Membaca Statistik Individual

Objek ringkasan menyediakan getCount, getSum, getMin, getMax, dan getAverage.

import java.util.IntSummaryStatistics;
import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {
        IntSummaryStatistics s = IntStream.rangeClosed(1, 10).summaryStatistics();
        System.out.println("count=" + s.getCount());
        System.out.println("avg=" + s.getAverage());
        System.out.println("max=" + s.getMax());
    }
}

Menggabungkan Rentang dan Agregat

Rentang dan agregat dapat disusun secara alami: menghasilkan, mengubah, lalu reduce menjadi satu angka.

import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {
        int sumOfSquares = IntStream.rangeClosed(1, 4)
            .map(n -> n * n)
            .sum();
        System.out.println(sumOfSquares);
    }
}

Agregat LongStream

LongStream menyediakan metode rentang dan agregat yang sama, dengan mengembalikan LongSummaryStatistics.

import java.util.stream.LongStream;

public class Main {
    public static void main(String[] args) {
        long sum = LongStream.rangeClosed(1, 1000).sum();
        System.out.println(sum);
    }
}

Pemeriksaan Singkat

Apa perbedaan antara range dan rangeClosed?

Ringkasan

Anda menghasilkan dan merangkum rentang primitif:

  • range tidak menyertakan nilai akhir; rangeClosed menyertakannya.
  • Agregat: sum, average (OptionalDouble), min/max (OptionalInt), count.
  • summaryStatistics menghitung semuanya dalam satu kali lintasan.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Operasi Rentang dan Agregasi” gratis?

Ya — teks lengkap “Operasi Rentang dan Agregasi” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Java Academy, upgrade ke CoddyKit PRO. Kursus Java Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Operasi Rentang dan Agregasi”?

range, sum, average, summaryStatistics. Kamu berlatih Java Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Java Academy?

Tidak diperlukan pengalaman sebelumnya. Java Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.

Berapa lama pelajaran “Operasi Rentang dan Agregasi” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Java Academy ini?

Ya. Setiap pelajaran Java Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. IntStream dan LongStream
  2. Operasi Rentang dan Agregasi
  3. Pemetaan ke dan dari Stream Objek
  4. Membuat Stream Primitif
← Kembali ke Java Academy