map/filter/reduce
Streamの主要な操作であるmap、filter、reduceを学びます。
「map/filter/reduce」はCoddyKit上の無料Java Academyレッスンです。 これはレッスン2/3です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはJava Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Java Academyコースには全3レッスンが含まれています。
導入
mapはデータを変換し、filterは項目を選択し、reduceは結果を1つにまとめます。
map
map:各要素に関数を適用し、新しい Stream を生成します。
コード:map
このコードは各文字列を大文字に変換します。
import java.util.*;import java.util.stream.*;public class Main {
public static void main(String[] args) {
List<String> names = Arrays.asList("ada", "bob");
names.stream().map(String::toUpperCase).forEach(System.out::println);
}
}
filter
filter:条件に一致する要素だけを残します。
コード:filter
このコードはリストから偶数を抽出します。
import java.util.*;import java.util.stream.*;public class Main {
public static void main(String[] args) {
List<Integer> nums = Arrays.asList(1,2,3,4,5);
nums.stream().filter(n -> n % 2 == 0).forEach(System.out::println);
}
}
コード:reduce
reduceは要素をまとめます。ここでは数値を合計します。
import java.util.*;import java.util.stream.*;public class Main {
public static void main(String[] args) {
List<Integer> nums = Arrays.asList(1,2,3,4);
int sum = nums.stream().reduce(0, (a,b) -> a+b);
System.out.println("Sum = " + sum);
}
}
map/filter/reduce の確認
クイックチェック:要素を1つの結果にまとめる Stream 操作はどれですか。
まとめ
まとめ:map は変換し、filter は選択し、reduce は結合します。これらは Stream の基本的なツールです。
よくある質問
「map/filter/reduce」レッスンは無料ですか?
はい。「map/filter/reduce」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Java Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Java Academyコースには全3レッスンが含まれています。
「map/filter/reduce」で何を学びますか?
Streamの主要な操作であるmap、filter、reduceを学びます。 ブラウザで直接実行するハンズオンコードでJava Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Java Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのJava Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/3です。
「map/filter/reduce」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このJava Academyレッスンでコードを書いて実行できますか?
はい。すべてのJava Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- Streamのソース
- map/filter/reduce
- Collectorsとグループ化