Aralık ve Birleştirme İşlemleri
range, sum, average, summaryStatistics
Aralık ve Birleştirme İşlemleri, CoddyKit'te ücretsiz bir Java Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Java Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Java Academy kursu toplamda 4 dersten oluşur.
Aralıklar Oluşturma
IntStream.range(start, end), start değerinden başlayıp end değerini içermeden önceki değere kadar ardışık tam sayılar üretir.
import java.util.stream.IntStream;
public class Main {
public static void main(String[] args) {
IntStream.range(0, 5).forEach(System.out::println);
}
}rangeClosed Son Değeri İçerir
IntStream.rangeClosed(start, end) son değeri içerir; bu nedenle rangeClosed(1, 5), 1'den 5'e kadar olan değerleri üretir.
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);
}
}Dizin Döngülerini Değiştirme
Dizideki konumlar üzerinde yineleme yaparken aralıklar, dizin tabanlı for döngülerinin temiz bir alternatifidir.
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, tüm öğeleri toplar ve ilkel türde bir sonuç döndürür.
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, akış boş olabileceği için bir OptionalDouble döndürür.
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 ve max
min ve max, OptionalInt döndürür. Akışın boş olmadığını biliyorsanız getAsInt kullanınız.
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, öğe sayısını long türünde döndürür.
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, count, sum, min, average ve max değerlerini tek geçişte hesaplayarak bir IntSummaryStatistics döndürür.
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);
}
}Tek Tek İstatistikleri Okuma
Özet nesnesi getCount, getSum, getMin, getMax ve getAverage yöntemlerini sunar.
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());
}
}Aralık ve Toplulaştırmayı Birleştirme
Aralıklar ve toplulaştırmalar doğal biçimde birleştirilebilir: oluşturun, dönüştürün ve ardından tek bir sayıya indirgeyin.
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);
}
}LongStream Toplulaştırmaları
LongStream, aynı aralık ve toplulaştırma yöntemlerini sunar ve bir LongSummaryStatistics döndürür.
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);
}
}Hızlı Kontrol
range ve rangeClosed arasındaki fark nedir?
Özet
İlkel tür aralıkları oluşturdunuz ve özetlediniz:
range, son değeri dışarıda bırakır;rangeClosedise son değeri içerir.- Toplulaştırmalar:
sum,average(OptionalDouble),min/max(OptionalInt),count. summaryStatistics, bunların tümünü tek geçişte hesaplar.
Sıkça Sorulan Sorular
“Aralık ve Birleştirme İşlemleri” dersi ücretsiz mi?
Evet — “Aralık ve Birleştirme İşlemleri” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Java Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Java Academy kursu toplamda 4 dersten oluşur.
“Aralık ve Birleştirme İşlemleri” dersinde ne öğreneceğim?
range, sum, average, summaryStatistics Java Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Java Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Java Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“Aralık ve Birleştirme İşlemleri” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Java Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Java Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- IntStream ve LongStream
- Aralık ve Birleştirme İşlemleri
- Nesne Akışlarına ve Nesne Akışlarından Eşleme
- İlkel Tür Akışları Üretme