Java Code Examples for java.util.stream.Stream#generate()

The following examples show how to use java.util.stream.Stream#generate() . These examples are extracted from open source projects. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
@NotNull
private Stream<Map<String, Object>> generateInfiniteStream() {
  return Stream.generate(new Supplier<Map<String, Object>>() {
    Random random = new Random();
    int index = 0;
    @Override
    public Map<String, Object> get() {
      return new LinkedHashMap<String, Object>() {
        {
          put("str1", index++);
          put("str2", random.nextFloat());
          put("str3", random.nextInt());
        }
      };
    }
  });
}
 
Example 2
Source Project: ignite   File: DataStreamGeneratorTest.java    License: Apache License 2.0 6 votes vote down vote up
/** */
@Test
public void testAsMap() {
    DataStreamGenerator generator = new DataStreamGenerator() {
        @Override public Stream<LabeledVector<Double>> labeled() {
            return Stream.generate(() -> new LabeledVector<>(VectorUtils.of(1., 2.), 100.));
        }
    };

    int N = 100;
    Map<Vector, Double> dataset = generator.asMap(N);
    assertEquals(N, dataset.size());
    dataset.forEach(((vector, label) -> {
        assertArrayEquals(new double[] {1., 2.}, vector.asArray(), 1e-7);
        assertEquals(100., label, 1e-7);
    }));
}
 
Example 3
public static Stream<TicketCategory> generateCategoryStream() {
    AtomicInteger generator = new AtomicInteger();
    return Stream.generate(() -> {
        boolean isBounded = generator.incrementAndGet() % 3 != 0;
        TicketCategory tc = Mockito.mock(TicketCategory.class);
        when(tc.isBounded()).thenReturn(isBounded);
        when(tc.getMaxTickets()).thenReturn(isBounded ? 2 : -1);
        return tc;
    });
}
 
Example 4
Source Project: ignite   File: DataStreamGeneratorTest.java    License: Apache License 2.0 5 votes vote down vote up
/** */
@Test
public void testMapVectors() {
    DataStreamGenerator generator = new DataStreamGenerator() {
        @Override public Stream<LabeledVector<Double>> labeled() {
            return Stream.generate(() -> new LabeledVector<>(VectorUtils.of(1., 2.), 100.));
        }
    };

    generator.mapVectors(v -> VectorUtils.of(2., 1.)).labeled().limit(100).forEach(v -> {
        assertArrayEquals(new double[] {2., 1.}, v.features().asArray(), 1e-7);
        assertEquals(100., v.label(), 1e-7);
    });
}
 
Example 5
public Stream<Value> valueStream(Column column) {
  return Stream.generate(() -> {
    int threshold = nullThreshold;
    if (column.notNull()) {
      threshold = -1;
    }
    if (random.nextInt(100) < threshold) {
      return generateNullValue(column.type());
    }
    return generate(column);
  });
}
 
Example 6
public Stream<MutationGroup> stream() {
  Map<String, TableSupplier> suppliers = new HashMap<>();
  for (Table t : ddl.allTables()) {
    suppliers.put(t.name(), new TableSupplier(t));
  }

  Collection<Table> roots = ddl.rootTables();
  List<Supplier<MutationGroup>> groupSuppliers = new ArrayList<>();
  Random rand = new Random();
  for (Table r : roots) {
    groupSuppliers.add(new TableHierarchySupplier(ddl, r, suppliers, rand));
  }

  return Stream.generate(new DbSupplier(groupSuppliers, rand));
}
 
Example 7
public void testBaseStreams() {
    Stream<String> arrayList = new ArrayList<String>().stream();
    Stream<String> linkedList = new LinkedList<String>().stream();
    Stream<String> hashSet = new HashSet<String>().stream();
    Stream<String> treeSet = new TreeSet<String>().stream();
    Stream<String> linkedHashSet = new LinkedHashSet<String>().stream();
    Stream<String> repeat = Stream.generate(() -> "");

    assertFlags(OpTestCase.getStreamFlags(arrayList),
                EnumSet.of(ORDERED, SIZED),
                EnumSet.of(DISTINCT, SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(linkedList),
                EnumSet.of(ORDERED, SIZED),
                EnumSet.of(DISTINCT, SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(hashSet),
                EnumSet.of(SIZED, DISTINCT),
                EnumSet.of(ORDERED, SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(treeSet),
                EnumSet.of(ORDERED, SIZED, DISTINCT, SORTED),
                EnumSet.of(SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(linkedHashSet),
                EnumSet.of(ORDERED, DISTINCT, SIZED),
                EnumSet.of(SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(repeat),
                EnumSet.noneOf(StreamOpFlag.class),
                EnumSet.of(DISTINCT, SORTED, SHORT_CIRCUIT));
}
 
Example 8
public void testBaseStreams() {
    Stream<String> arrayList = new ArrayList<String>().stream();
    Stream<String> linkedList = new LinkedList<String>().stream();
    Stream<String> hashSet = new HashSet<String>().stream();
    Stream<String> treeSet = new TreeSet<String>().stream();
    Stream<String> linkedHashSet = new LinkedHashSet<String>().stream();
    Stream<String> repeat = Stream.generate(() -> "");

    assertFlags(OpTestCase.getStreamFlags(arrayList),
                EnumSet.of(ORDERED, SIZED),
                EnumSet.of(DISTINCT, SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(linkedList),
                EnumSet.of(ORDERED, SIZED),
                EnumSet.of(DISTINCT, SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(hashSet),
                EnumSet.of(SIZED, DISTINCT),
                EnumSet.of(ORDERED, SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(treeSet),
                EnumSet.of(ORDERED, SIZED, DISTINCT, SORTED),
                EnumSet.of(SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(linkedHashSet),
                EnumSet.of(ORDERED, DISTINCT, SIZED),
                EnumSet.of(SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(repeat),
                EnumSet.noneOf(StreamOpFlag.class),
                EnumSet.of(DISTINCT, SORTED, SHORT_CIRCUIT));
}
 
Example 9
public void testBaseStreams() {
    Stream<String> arrayList = new ArrayList<String>().stream();
    Stream<String> linkedList = new LinkedList<String>().stream();
    Stream<String> hashSet = new HashSet<String>().stream();
    Stream<String> treeSet = new TreeSet<String>().stream();
    Stream<String> linkedHashSet = new LinkedHashSet<String>().stream();
    Stream<String> repeat = Stream.generate(() -> "");

    assertFlags(OpTestCase.getStreamFlags(arrayList),
                EnumSet.of(ORDERED, SIZED),
                EnumSet.of(DISTINCT, SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(linkedList),
                EnumSet.of(ORDERED, SIZED),
                EnumSet.of(DISTINCT, SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(hashSet),
                EnumSet.of(SIZED, DISTINCT),
                EnumSet.of(ORDERED, SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(treeSet),
                EnumSet.of(ORDERED, SIZED, DISTINCT, SORTED),
                EnumSet.of(SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(linkedHashSet),
                EnumSet.of(ORDERED, DISTINCT, SIZED),
                EnumSet.of(SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(repeat),
                EnumSet.noneOf(StreamOpFlag.class),
                EnumSet.of(DISTINCT, SORTED, SHORT_CIRCUIT));
}
 
Example 10
public void testBaseStreams() {
    Stream<String> arrayList = new ArrayList<String>().stream();
    Stream<String> linkedList = new LinkedList<String>().stream();
    Stream<String> hashSet = new HashSet<String>().stream();
    Stream<String> treeSet = new TreeSet<String>().stream();
    Stream<String> linkedHashSet = new LinkedHashSet<String>().stream();
    Stream<String> repeat = Stream.generate(() -> "");

    assertFlags(OpTestCase.getStreamFlags(arrayList),
                EnumSet.of(ORDERED, SIZED),
                EnumSet.of(DISTINCT, SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(linkedList),
                EnumSet.of(ORDERED, SIZED),
                EnumSet.of(DISTINCT, SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(hashSet),
                EnumSet.of(SIZED, DISTINCT),
                EnumSet.of(ORDERED, SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(treeSet),
                EnumSet.of(ORDERED, SIZED, DISTINCT, SORTED),
                EnumSet.of(SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(linkedHashSet),
                EnumSet.of(ORDERED, DISTINCT, SIZED),
                EnumSet.of(SORTED, SHORT_CIRCUIT));
    assertFlags(OpTestCase.getStreamFlags(repeat),
                EnumSet.noneOf(StreamOpFlag.class),
                EnumSet.of(DISTINCT, SORTED, SHORT_CIRCUIT));
}
 
Example 11
private static Stream<Integer> generate() {
    class Generator implements Supplier<Integer> {
        private int i;

        @Override
        public Integer get() {
            return i++;
        }
    }

    return Stream.generate(new Generator());
}
 
Example 12
Source Project: ignite   File: DataStreamGeneratorTest.java    License: Apache License 2.0 5 votes vote down vote up
/** */
@Test
public void testUnlabeled() {
    DataStreamGenerator generator = new DataStreamGenerator() {
        @Override public Stream<LabeledVector<Double>> labeled() {
            return Stream.generate(() -> new LabeledVector<>(VectorUtils.of(1., 2.), 100.));
        }
    };

    generator.unlabeled().limit(100).forEach(v -> assertArrayEquals(new double[] {1., 2.}, v.asArray(), 1e-7));
}
 
Example 13
Source Project: ignite   File: DataStreamGeneratorTest.java    License: Apache License 2.0 5 votes vote down vote up
/** */
@Test
public void testAsDatasetBuilder() throws Exception {
    AtomicInteger cntr = new AtomicInteger();

    DataStreamGenerator generator = new DataStreamGenerator() {
        @Override public Stream<LabeledVector<Double>> labeled() {
            return Stream.generate(() -> {
                int val = cntr.getAndIncrement();
                return new LabeledVector<>(VectorUtils.of(val), (double)val % 2);
            });
        }
    };

    int N = 100;
    cntr.set(0);
    DatasetBuilder<Vector, Double> b1 = generator.asDatasetBuilder(N, 2);
    cntr.set(0);
    DatasetBuilder<Vector, Double> b2 = generator.asDatasetBuilder(N, (v, l) -> l == 0, 2);
    cntr.set(0);
    DatasetBuilder<Vector, Double> b3 = generator.asDatasetBuilder(N, (v, l) -> l == 1, 2,
        new UpstreamTransformerBuilder() {
            @Override public UpstreamTransformer build(LearningEnvironment env) {
                return new UpstreamTransformerForTest();
            }
        });

    checkDataset(N, b1, v -> (Double)v.label() == 0 || (Double)v.label() == 1);
    checkDataset(N / 2, b2, v -> (Double)v.label() == 0);
    checkDataset(N / 2, b3, v -> (Double)v.label() < 0);
}
 
Example 14
Source Project: QuickTheories   File: GenTest.java    License: Apache License 2.0 4 votes vote down vote up
private <T> Stream<T> generate(Gen<T> gen) {
  return Stream.generate( () -> gen.generate(source));
}
 
Example 15
Source Project: tcases   File: AbstractStringDomain.java    License: MIT License 4 votes vote down vote up
/**
 * Returns a random sequence of possible members of this domain.
 */
protected Stream<String> candidates( ResolverContext context)
  {
  return Stream.generate( () -> newValue( context));
  }
 
Example 16
Source Project: tcases   File: ObjectDomain.java    License: MIT License 4 votes vote down vote up
/**
 * Returns a random sequence of values from this domain.
 */
public Stream<DataValue<Map<String,DataValue<?>>>> values( ResolverContext context)
  {
  return Stream.generate( () -> dataValueOf( newObject( context)));
  }
 
Example 17
Source Project: tcases   File: ArrayDomain.java    License: MIT License 4 votes vote down vote up
/**
 * Returns a random sequence of values from this domain.
 */
public Stream<DataValue<List<DataValue<T>>>> values( ResolverContext context)
  {
  return Stream.generate( () -> dataValueOf( newArray( context)));
  }
 
Example 18
public static void main(String[] args) throws IOException {
	
	//Creating Streams using user/programmatically specified elements  
	 Stream<String> Userstream = Stream.of("Creating","Streams","from","Specific","elements");
	 Userstream.forEach(p -> System.out.println(p));
     
	 
	 //Creating Streams using array of objects
        Stream<String> ArrayStream = Stream.of( new String[]{"Stream","from","an","array","of","objects"} );
        ArrayStream.forEach(p -> System.out.println(p)); 
    
       
        //Creating Streams from an array
        String[] StringArray=new String[]{"We","can","convert","an","array","to","a","Stream","using","Arrays","as","well"};
        Stream<String> StringStream=Arrays.stream(StringArray);
        StringStream.forEach(p -> System.out.println(p));
        
        //Creating Streams from Collection
        List<Double> myCollection = new ArrayList<>();
        for(int i=0; i<10; i++){
       	 myCollection.add(Math.random());
        }
               //sequential stream
        Stream<Double> sequentialStream = myCollection.stream();
        sequentialStream.forEach(p -> System.out.println(p));
        		
                //parallel stream
        Stream<Double> parallelStream = myCollection.parallelStream();
        parallelStream.forEach(p -> System.out.println(p));
        
        
        //Stream from Hashmap
        Map<String, Integer> mapData = new HashMap<>();
        mapData.put("This", 1900);
        mapData.put("is", 2000);
        mapData.put("HashMap", 2100);
        
        mapData.entrySet()
       		.stream()
       		.forEach(p -> System.out.println(p));
        
        mapData.keySet()
               .stream()
               .forEach(p-> System.out.println(p));
        
        //primitive streams 
        IntStream.range(1, 4)
        .forEach(p -> System.out.println(p));
        
        LongStream.rangeClosed(1, 4)
        .forEach(p -> System.out.println(p));
        
        DoubleStream.of(1.0,2.0,3.0,4.0)
        .forEach(p -> System.out.println(p));
        
        //Infinite Streams using generate()
        Stream <Double> sequentialDoubleStream = Stream.generate(Math :: random); 

        Stream<Integer> sequentialIntegerStream = Stream.generate(new AtomicInteger () :: getAndIncrement); 

        //Infinite Streams using iterate()
        Stream <Integer> sequentialIntegerStream1 = Stream.iterate (Integer.MIN_VALUE, i -> i++); 

        Stream <BigInteger> sequentialBigIntegerStream = Stream.iterate(BigInteger.ZERO, i -> i.add (BigInteger.TEN)); 
        
        //Streams from File
        Stream<String> streamOfStrings = Files.lines(Paths.get("Apology_by_Plato.txt"));
        Stream<String> streamWithCharset = Files.lines(Paths.get("Apology_by_Plato.txt"), Charset.forName("UTF-8"));

      
}
 
Example 19
Source Project: elm-plugin   File: ElmScope.java    License: MIT License 4 votes vote down vote up
public static Stream<Optional<ElmLowerCaseId>> recordFieldsFor(ElmFile file) {
    ElmRecordFieldsProvider p = new ElmRecordFieldsProvider(file);
    return Stream.generate(p::nextField);
}
 
Example 20
Source Project: unix-stream   File: UnixStream.java    License: MIT License 2 votes vote down vote up
/**
 * Create a new infinite UnixStream from the standard input.
 *
 * @return a new infinite UnixStream from the standard input.
 * @throws IOException thrown if an error occurs during reading the standard input
 */
static UnixStream<String> cat() throws IOException {
    return new UnixStreamImpl<>(Stream.generate(new StandardInputSupplier(new BufferedReader(new InputStreamReader(in)))));
}