📜  Java中将原始数组转换为流的程序

📅  最后修改于: 2022-05-13 01:55:43.213000             🧑  作者: Mango

Java中将原始数组转换为流的程序

数组是一组由通用名称引用的类似类型的变量。数组可以包含原始数据类型以及类的对象,具体取决于数组的定义。在原始数据类型的情况下,实际值存储在连续的内存位置。对于类的对象,实际对象存储在堆段中。

原始数组是在原始包装类的帮助下定义的数组,而不是对象。
示例:整数 a = new Integer(4);

将 Primitive Array 转换为 Stream 时,会得到IntStream、DoubleStream 和 LongStream等原始 Streams。

例子:

以下是在Java中将原始数组转换为流的方法:

  1. 使用 Arrays.stream()

    算法

    1. 获取要转换的数组。
    2. 通过将数组作为参数传递,使用 Arrays.stream() 方法将数组转换为 Stream。
    3. 返回形成的 Stream

    程序:

    // Java Program to convert
    // Array to Stream
      
    import java.util.*;
    import java.util.stream.*;
      
    class GFG {
      
        // Generic function to convert 
        // an Array to Stream
        public static IntStream 
                    convertArrayToStream(int array[])
        {
      
            // Return the converted Stream
            return Arrays.stream(array);
        }
      
        public static void main(String args[])
        {
            // Create an Array
            int[] array = new int[] { 3, 2, 5, 4, 1 };
      
            // Print the Array
            System.out.println("Array: " 
                        + Arrays.toString(array));
      
            // convert the Array to Stream
            IntStream stream = convertArrayToStream(array);
      
            // Print the Stream
            System.out.println("Stream: " 
                        + Arrays.toString(stream.toArray()));
        }
    }
    
    输出:
    Array: [3, 2, 5, 4, 1]
    Stream: [3, 2, 5, 4, 1]
    
  2. 使用 IntStream.of() : IntStream.of() 方法使用作为参数传递的原始值或集合直接创建一个 Stream。

    算法

    1. 获取要转换的数组。
    2. 通过将数组作为参数传递,使用 IntStream.of() 方法将数组转换为 Stream。
    3. 返回形成的 Stream

    程序:

    // Java Program to convert
    // Array to Stream
      
    import java.util.*;
    import java.util.stream.*;
      
    class GFG {
      
        // Generic function to convert 
        // an Array to Stream
        public static IntStream 
                   convertArrayToStream(int array[])
        {
      
            // Return the converted Stream
            return IntStream.of(array);
        }
      
        public static void main(String args[])
        {
            // Create an Array
            int[] array = new int[] { 3, 2, 5, 4, 1 };
      
            // Print the Array
            System.out.println("Array: " 
                          + Arrays.toString(array));
      
            // convert the Array to Stream
            IntStream stream = convertArrayToStream(array);
      
            // Print the Stream
            System.out.println("Stream: " 
                          + Arrays.toString(stream.toArray()));
        }
    }
    
    输出:
    Array: [3, 2, 5, 4, 1]
    Stream: [3, 2, 5, 4, 1]