Java では、IntStream クラスと LongStream クラスで Range メソッドにアクセスできます。 IntStream クラスでは、このメソッドを使用して、指定された範囲内の連続した値を関数パラメーターとして返すことができます。使用される 2 つのパラメーターは startInclusive (包括的) と endExclusive (排他的) で、段階的に増加します。開始値は含まれますが、終了値は除外されることに注意することが重要です。 LongStream クラスも同様のパターンに従いますが、唯一の違いは LongStream 値が含まれていることです。
広告 このカテゴリーの人気コース JAVA マスタリー - スペシャライゼーション | 78 コース シリーズ | 15 回の模擬テストJava の range メソッドの構文を見てみましょう。
1. IntStream 範囲の構文
static IntStream range(int startInclusive, int endExclusive)
パラメータ:
戻り値:
このメソッドは、範囲内でパラメータとして指定された int 要素の連続した IntStream を返します。
2. LongStream 範囲の構文
static LongStream range(int startInclusive, int endExclusive)
パラメータ:
戻り値:
このメソッドは、範囲内でパラメータとして指定された長い要素の連続した LongStream を返します。
まず、Java で IntStream 範囲がどのように機能するかを見てみましょう。 Java の他のクラスと同様に、このクラスにも最初にインポートする必要があるパッケージが必要です。 IntStream クラスを操作するには、パッケージ import java.util.stream.IntStream をインポートします。インポートしたら、要素を追加できるように IntStream を作成します。ストリームを作成した後、メソッド range( ) を使用して要素を追加します。コードを実行すると、パラメーターで指定された範囲内で、1 ずつ増分ステップで、順番に並べられた IntStream が返されます。
各要素を出力するには、以下に示すように forEach メソッドを使用します。
intStream.forEach(System.out::println);
LongStream の場合は、まず java.util.stream.LongStream パッケージをインポートします。 IntStream の機能と同様に、パッケージがインポートされたら、要素を追加できるように LongStream を作成します。ストリームを作成した後、メソッド range( ) を使用して要素を追加します。コードを実行すると、指定された範囲内で、増分ステップが 1 である連続した順序の LongStream が生成されます。
すべての要素を出力するには、以下に示すように、forEach メソッドを使用します。
LongStream.forEach(System.out::println);
以下に示すように、増加する要素のシーケンスを出力する同等の方法は、for ループを使用して順次生成できます。
for (inti = startInclusive; i<endExclusive ; i++) {... . . . }
以下に例を示します:
IntStream 範囲関数を実装する Java プログラム。
コード:
// IntStream range implementation using Java import java.util.*; //import the package for IntStream import java.util.stream.IntStream; public class RangeExample { // main method public static void main(String[] args) { // Create an IntStream IntStream st = IntStream.range(32, 45); // Display the elements in the range mentioned as 32 and 45 where 32 is included and 45 is excluded System.out.println("The elements are:"); st.forEach(System.out::println); } }
出力:
まず、java.util.stream.IntStream パッケージをインポートします。次に、要素を追加するための IntStream st を作成します。 32 から 44 (32 を含み、45 を除く) の順序で順序付けされた IntStream を作成するには、ストリームの作成時に range(32, 45) メソッドを使用します。コードを実行すると、サンプル出力に示すように、32 から 44 までの範囲で 1 ずつ増分する順次順序付けされた IntStream の望ましい結果が生成されます。
LongStream 範囲関数を実装する Java プログラム。
コード:
// LongStream range implementation using Java import java.util.*; //import the package for LongStream import java.util.stream.LongStream; public class RangeExample { // main method public static void main(String[] args) { // Create a LongStream LongStream st = LongStream.range(1000001L, 1000010L); // Display the elements in the range mentioned as 1000001L and 1000010L where 1000001L is included and 1000010L is excluded System.out.println("The elements are:"); st.forEach(System.out::println); } }
出力:
上記のプログラムと同様に、java.util.stream.LongStream パッケージをインポートします。次に、要素を追加するためのメソッド範囲 (100001L、100010L) を持つ LongStreamst を作成します。コードを実行すると、100001L から 100010L まで 1 ずつ増加する、順序付けされた LongStream が生成されます。サンプル出力はこの動作を示します。
LongStream および IntStream 範囲関数を組み合わせて実装する Java プログラム。
コード:
import java.util.*; //import the package for IntStream import java.util.stream.IntStream; //import the package for LongStream import java.util.stream.LongStream; public class RangeExample { // main method public static void main(String[] args) { // Create an IntStream IntStream str = IntStream.range(32, 45); // Display the elements in the range mentioned as 32 and 45 where 32 is included and 45 is excluded System.out.println("The IntStream elements are:"); str.forEach(System.out::println); // Create a LongStream LongStream st = LongStream.range(1000001L, 1000010L); // Display the elements in the range mentioned as 1000001L and 1000010L where 1000001L is included and 1000010L is excluded System.out.println("The LongStream elements are:"); st.forEach(System.out::println); } }
出力:
パッケージ java.util.stream.IntStream および java.util.stream.LongStream をインポートします。次に、IntStreamstr と LongStreamst を作成して要素を追加します。 32 (両端を含む) から 45 (両端を含まない) までの範囲の要素を含むストリームを IntStream に作成するには、 range(32, 45) メソッドを使用できます。同様に、LongStream に要素を追加するにはメソッド range (100001L, 100010L) を使用します。コードを実行すると、32 ~ 44 (32 を含み、45 を除く) の範囲で順序付けされた IntStream が生成されます。さらに、コードを実行すると、増分ステップ 1 で 100001L から 100010L までの範囲の LongStream も返されます。
Java の range メソッドは、関数パラメータとして指定された範囲内の順番に並べられた IntStream 値と LongStream 値を返します。この記事では、同じことのいくつかの側面について詳しく説明します。
以上がJava の範囲の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。