java.util.stream.Stream#generate ( )源码实例Demo

下面列出了java.util.stream.Stream#generate ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: beakerx   文件: TableDisplayStreamMapModelTest.java
@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());
        }
      };
    }
  });
}
 
源代码2 项目: ignite   文件: DataStreamGeneratorTest.java
/** */
@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);
    }));
}
 
源代码3 项目: alf.io   文件: TicketCategoryGenerator.java
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;
    });
}
 
源代码4 项目: ignite   文件: DataStreamGeneratorTest.java
/** */
@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);
    });
}
 
源代码5 项目: DataflowTemplates   文件: RandomValueGenerator.java
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);
  });
}
 
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));
}
 
源代码7 项目: openjdk-jdk8u-backup   文件: StreamFlagsTest.java
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));
}
 
源代码8 项目: jdk8u-jdk   文件: StreamFlagsTest.java
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));
}
 
源代码9 项目: hottub   文件: StreamFlagsTest.java
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));
}
 
源代码10 项目: openjdk-8-source   文件: StreamFlagsTest.java
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));
}
 
源代码11 项目: monsoon   文件: ClientServerTest.java
private static Stream<Integer> generate() {
    class Generator implements Supplier<Integer> {
        private int i;

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

    return Stream.generate(new Generator());
}
 
源代码12 项目: ignite   文件: DataStreamGeneratorTest.java
/** */
@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));
}
 
源代码13 项目: ignite   文件: DataStreamGeneratorTest.java
/** */
@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);
}
 
源代码14 项目: QuickTheories   文件: GenTest.java
private <T> Stream<T> generate(Gen<T> gen) {
  return Stream.generate( () -> gen.generate(source));
}
 
源代码15 项目: tcases   文件: AbstractStringDomain.java
/**
 * Returns a random sequence of possible members of this domain.
 */
protected Stream<String> candidates( ResolverContext context)
  {
  return Stream.generate( () -> newValue( context));
  }
 
源代码16 项目: tcases   文件: ObjectDomain.java
/**
 * Returns a random sequence of values from this domain.
 */
public Stream<DataValue<Map<String,DataValue<?>>>> values( ResolverContext context)
  {
  return Stream.generate( () -> dataValueOf( newObject( context)));
  }
 
源代码17 项目: tcases   文件: ArrayDomain.java
/**
 * Returns a random sequence of values from this domain.
 */
public Stream<DataValue<List<DataValue<T>>>> values( ResolverContext context)
  {
  return Stream.generate( () -> dataValueOf( newArray( context)));
  }
 
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"));

      
}
 
源代码19 项目: elm-plugin   文件: ElmScope.java
public static Stream<Optional<ElmLowerCaseId>> recordFieldsFor(ElmFile file) {
    ElmRecordFieldsProvider p = new ElmRecordFieldsProvider(file);
    return Stream.generate(p::nextField);
}
 
源代码20 项目: unix-stream   文件: UnixStream.java
/**
 * 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)))));
}