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

Java 9でのStreamAPIのiterate()メソッドの重要性?


Java 8では、 iterate() ストリームAPIのメソッド シードを取ります および単項 オペレーター 引数として。ストリームが無限になると、開発者は明示的を追加します。 終了 条件 limit、findFirst、findAnyなどを使用します。Java9では、 iterate() ストリームの方法 API 新しい引数、述語を追加しました それは流れを壊す条件を取ります。

構文
static <T> Stream<T> iterate(T seed, Predicate<? super T> hasNext, UnaryOperator<T> next)

import java.util.stream.Collectors;
import java.util.stream.Stream;
import java.util.List;
public class StreamIterateMethodTest {
   public static void main(String args[]) {
      List<Integer> numbers1 = Stream.iterate(1, i -> i+1)   // with two arguments
            .limit(10)
            .collect(Collectors.toList());
      System.out.println("In Java 8:" + numbers1);
      List<Integer> numbers2 = Stream.iterate(1, i -> i <= 10, i -> i+1)    // with three arguments
            .collect(Collectors.toList());
      System.out.println("In Java 9:" + numbers2);
   }
}
出力
In Java 8:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
In Java 9:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

  1. Java 9でのdestroyForcibly()メソッドの重要性?

    destroyForcibly() メソッドを使用してプロセスを強制終了できます 。プロセスが終了またはフリーズした場合に必要になります。たとえば、 isAlive() destroyForcibly()の後にメソッドはtrueを返します と呼ばれます。 destroyForcibly() メソッドは、終了が正常に要求された場合はtrueを返し、それ以外の場合はfalseを返します。 構文 boolean destroyForcibly() 以下の例では、メモ帳を起動できます。 アプリケーションであり、 destroyForcibly()の後に終了します メソッドが呼び出されました。 例

  2. Javaでのclone()メソッドの重要性?

    clone() メソッドは、クローン可能を実装するクラスのオブジェクトのコピーを作成するために使用されます インターフェース。デフォルトでは、フィールドごとのコピーを実行します Objectクラスは、オブジェクトがこのメソッドを呼び出す特定のクラスのメンバーについて何も知らないためです。したがって、クラスにプリミティブデータ型のメンバーしかない場合は、オブジェクトの新しいコピーが作成され、新しいオブジェクトコピーへの参照が返されます。ただし、クラスに任意のクラスタイプのメンバーが含まれている場合は、それらのメンバーへのオブジェクト参照のみがコピーされるため、元のオブジェクトと複製されたオブジェ