Java
 Computer >> コンピューター >  >> プログラミング >> Java

Java 9のJShellで中間ストリーム操作を使用するにはどうすればよいですか?


JShell Javaで導入されたツールです 9 、および式、変数、メソッド、クラスなどの単純なステートメントを入力として受け入れ、すぐに結果を生成します。

ストリーム 値のシーケンスです。 中間ストリーム操作 ストリームを取得する操作です。たとえば、ラムダ式に適用して、結果として別の要素のストリームを生成できます。

最も一般的な中間ストリーム操作を以下に示します。

  • 1)sorted(): このメソッドは、結果として消費されたストリームの要素を保持するだけでなく、それらを自然にソートされた順序に配置します。
  • 2)distinct(): このメソッドは、入力ストリームの一意の要素のみを保持するストリームを返し、保持される要素の相対的な順序を維持できます。
  • 3)filter(): このメソッドは、いくつかのロジックに基づいてストリーム要素をフィルタリングするために使用できます。
  • 4)map(): このメソッドは、ラムダ式を適用して、入力ストリーム要素から新しい結果を計算します。次に、これらの結果のストリームを出力として返します。


以下のコードスニペットでは、JShellツールでさまざまな中間ストリーム操作を実装できます。

スニペット
jshell> List<Integer> numbers = List.of(3, 10, 23, 200, 77, 9, 32);
numbers ==> [3, 10, 23, 200, 77, 9, 32]

jshell> numbers.stream().sorted().forEach(elem -> System.out.println(elem));
3
9
10
23
32
77
200

jshell> List<Integer> numbers = List.of(3, 5, 54, 280, 5, 9, 40);
numbers ==> [3, 5, 54, 280, 5, 9, 40]

jshell> numbers.stream().distinct().forEach(elem -> System.out.println(elem));
3
5
54
280
9
40

jshell> numbers.stream().distinct().sorted().forEach(elem -> System.out.println(elem));
3
5
9
40
54
280

jshell> numbers.stream().distinct().map(num -> num * num).forEach(elem -> System.out.println(elem));
9
25
2916
78400
81
1600

  1. JavaMath.randomの使用方法

    Math.random() Java メソッドは、0.0〜1.0の疑似乱数を生成します。結果の乱数を乗算して0-1の範囲外の範囲を取得でき、結果は0になる可能性がありますが、常に1未満です。 プログラミングをしていると、乱数を生成する必要がある場合がよくあります。たとえば、クルーズラインを運営しているとします。顧客の注文の最後に追加され、予約の参照として使用される乱数を生成することをお勧めします。または、推測ゲーム用に乱数を生成することもできます。 Javaには、乱数を生成するために使用できるいくつかの方法があります。 このチュートリアルでは、Javaで乱数を生成するために使用

  2. Java 9のJShellで例外を処理するにはどうすればよいですか?

    Java 9では、 JShell Java言語機能と豊富なライブラリをすばやく探索、発見、実験できる、高速で使いやすい環境を提供します。 JShellでは、例外を手動でキャッチする必要はありません。 JShellは各例外を自動的にキャッチします それに関する情報を表示してから、次のJShellプロンプトを表示して、セッションを続行できるようにします。 未チェックで機能します 例外 また。 チェック済みの両方を自動的にキャッチする およびチェックなし 例外の場合、JShellを使用すると、チェックされた例外をスローするメソッドを簡単に試すことができます。 以下の例では、 ArrayIndex