0Pricing
Java Academy · レッスン

実装

パラレルStreamを使って要約統計量を計算するParallel Statsプロジェクトを実装します。

「実装」はCoddyKit上の無料Java Academyレッスンです。 これはレッスン2/3です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはJava Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Java Academyコースには全3レッスンが含まれています。

導入

Parallel Statsを実装します。並列ストリームを使って、合計、平均、最小値、最大値を計算します。

コード:合計

並列ストリームに対してmapToInt().sum()を使い、合計を計算します。

import java.util.*;public class Main {
  public static void main(String[] args) {
    List<Integer> nums = Arrays.asList(1,2,3,4,5,6,7,8,9,10);
    int sum = nums.parallelStream().mapToInt(n -> n).sum();
    System.out.println("Sum = " + sum);
  }
}

コード:平均

average()は、並列データ全体の平均値を計算します。

import java.util.*;public class Main {
  public static void main(String[] args) {
    List<Integer> nums = Arrays.asList(10,20,30,40,50);
    double avg = nums.parallelStream().mapToInt(n -> n).average().orElse(0);
    System.out.println("Average = " + avg);
  }
}

コード:summaryStatistics

summaryStatistics()を使うと、主要な統計値を1回の処理で取得できます。

import java.util.*;import java.util.stream.*;public class Main {
  public static void main(String[] args) {
    List<Integer> nums = Arrays.asList(3,7,2,9,5);
    IntSummaryStatistics stats = nums.parallelStream().mapToInt(n -> n).summaryStatistics();
    System.out.println("Count = " + stats.getCount());
    System.out.println("Sum = " + stats.getSum());
    System.out.println("Min = " + stats.getMin());
    System.out.println("Average = " + stats.getAverage());
    System.out.println("Max = " + stats.getMax());
  }
}

空のリスト

空のリストに備えて処理します。要素がない場合でも、average().orElse(0)によってエラーを回避できます。

性能

並列化による高速化は大規模なデータセットでのみ現れます。小さなリストでは、逐次処理のほうが速い場合があります。

実装の確認

クイックチェック:IntStreamから統計値を直接まとめられるメソッドはどれですか。

まとめ

まとめ:sum、average、summaryStatistics()を使い、並列ストリームで統計処理を実装しました。

よくある質問

「実装」レッスンは無料ですか?

はい。「実装」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Java Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Java Academyコースには全3レッスンが含まれています。

「実装」で何を学びますか?

パラレルStreamを使って要約統計量を計算するParallel Statsプロジェクトを実装します。 ブラウザで直接実行するハンズオンコードでJava Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Java Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのJava Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/3です。

「実装」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このJava Academyレッスンでコードを書いて実行できますか?

はい。すべてのJava Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 設計
  2. 実装
  3. ベンチマーク
← Java Academyに戻る