Java 9のJShellでターミナルストリーム操作を使用するにはどうすればよいですか?
JShell インタラクティブツールです 単純なステートメントや式などを入力として受け取り、それを評価して、結果をすぐにユーザーに出力します。
端末操作 入力としてストリームを受け取るストリーム操作です および戻らない 任意の出力ストリーム。たとえば、ターミナル操作をラムダに適用できます。 表現 単一の結果を返します(単一のプリミティブ値/オブジェクト 、または単一のオブジェクトのコレクション )。 reduce() 、 max() 、および min() メソッドは、そのような端末操作の2つです。
以下のコードスニペットでは、さまざまな端末操作を使用できます: min() 、 max() 、および reduce() JShellのメソッド。
スニペット
jshell> IntStream.range(1, 11).reduce(0, (n1, n2) -> n1 + n2); $1 ==> 55 jshell> List.of(23, 12, 34, 53).stream().max(); | Error: | method max in interface java.util.stream.Stream cannot be applied to given types; | required: java.util.Comparator | found: no arguments | reason: actual and formal argument lists differ in length | List.of(23, 12, 34, 53).stream().max(); | ^----------------------------------^ jshell> List.of(23, 12, 34, 53).stream().max((n1, n2) -> Integer.compare(n1, n2)); $2 ==> Optional[53] jshell> $2.isPresent() $3 ==> true jshell> List.of(23, 12, 34, 53).stream().max((n1, n2) -> Integer.compare(n1, n2)).get(); $4 ==> 53 jshell> List.of(23, 12, 34, 53).stream().filter(e -> e%2==1).forEach(e -> System.out.println(e)) 23 53 jshell> List.of(23, 12, 34, 53).stream().filter(e -> e%2==1).collect(Collectors.toList()); $6 ==> [23, 53] jshell> List.of(23, 12, 34, 53).stream().min((n1, n2) -> Integer.compare(n1, n2)).get(); $8 ==> 12
-
JavaMath.randomの使用方法
Math.random() Java メソッドは、0.0〜1.0の疑似乱数を生成します。結果の乱数を乗算して0-1の範囲外の範囲を取得でき、結果は0になる可能性がありますが、常に1未満です。 プログラミングをしていると、乱数を生成する必要がある場合がよくあります。たとえば、クルーズラインを運営しているとします。顧客の注文の最後に追加され、予約の参照として使用される乱数を生成することをお勧めします。または、推測ゲーム用に乱数を生成することもできます。 Javaには、乱数を生成するために使用できるいくつかの方法があります。 このチュートリアルでは、Javaで乱数を生成するために使用
-
Java 9のJShellで例外を処理するにはどうすればよいですか?
Java 9では、 JShell Java言語機能と豊富なライブラリをすばやく探索、発見、実験できる、高速で使いやすい環境を提供します。 JShellでは、例外を手動でキャッチする必要はありません。 JShellは各例外を自動的にキャッチします それに関する情報を表示してから、次のJShellプロンプトを表示して、セッションを続行できるようにします。 未チェックで機能します 例外 また。 チェック済みの両方を自動的にキャッチする およびチェックなし 例外の場合、JShellを使用すると、チェックされた例外をスローするメソッドを簡単に試すことができます。 以下の例では、 ArrayIndex