俩的定义 为什么有 会产生哪些作用 之前是怎么做的
有哪些流
并行流 parallelStream() ?? 执行方式
串行流 stream() 单的 ?? 执行方式
--------------------------------------------------------------------------------------------------------------------------------------------
怎样获得流 ???? 继承了 Collection<E>接口的 集合框架里面的都可以直接使用 流为什么需要单一特征 ????? 还没完
Java 常见数据结构 没有继承 ?? 如何使用呢
map的key value 都是 集合里面的东西 所以可以变着法的用
可以将数组转成集合 所以 数组也可以用
可以先转成集合 在用
例 : Stream<String> stream =new ArrayList<String>().stream();
入参方式
流有哪些函数 作用
静态函数
static<T> Builder<T> builder()
static<T> Stream<T> empty()
static<T> Stream<T> of(T t)
static<T> Stream<T> of(T... values)
static<T> Stream<T> iterate(final T seed, final UnaryOperator<T> f)
public static<T> Stream<T> generate(Supplier<T> s)
public static <T> Stream<T> concat(Stream<? extends T> a, Stream<? extends T> b)
普通函数
Stream<T> filter(Predicate<? super T> predicate);
<R> Stream<R> map(Function<? super T, ? extends R> mapper);
IntStream mapToInt(ToIntFunction<? super T> mapper);
LongStream mapToLong(ToLongFunction<? super T> mapper);
DoubleStream mapToDouble(ToDoubleFunction<? super T> mapper);
<R> Stream<R> flatMap(Function<? super T, ? extends Stream<? extends R>> mapper);
IntStream flatMapToInt(Function<? super T, ? extends IntStream> mapper);
LongStream flatMapToLong(Function<? super T, ? extends LongStream> mapper);
DoubleStream flatMapToDouble(Function<? super T, ? extends DoubleStream> mapper);
Stream<T> distinct();
Stream<T> sorted();
Stream<T> sorted(Comparator<? super T> comparator);
Stream<T> peek(Consumer<? super T> action);
Stream<T> limit(long maxSize);
Stream<T> skip(long n);
void forEach(Consumer<? super T> action);
void forEachOrdered(Consumer<? super T> action);
Object[] toArray();
<A> A[] toArray(IntFunction<A[]> generator);
T reduce(T identity, BinaryOperator<T> accumulator);
Optional<T> reduce(BinaryOperator<T> accumulator);
<U> U reduce(U identity,
BiFunction<U, ? super T, U> accumulator,
BinaryOperator<U> combiner);
<R> R collect(Supplier<R> supplier,
BiConsumer<R, ? super T> accumulator,
BiConsumer<R, R> combiner);
<R, A> R collect(Collector<? super T, A, R> collector);
Optional<T> min(Comparator<? super T> comparator);
Optional<T> max(Comparator<? super T> comparator);
long count();
boolean anyMatch(Predicate<? super T> predicate);
boolean allMatch(Predicate<? super T> predicate);
boolean noneMatch(Predicate<? super T> predicate);
Optional<T> findFirst();
Optional<T> findAny();
内部类
--------------------------------------------------------------------------------------------------------------------------------------------
流有哪些使用方式 有哪些 函数 函数名 作用 流的使用方式 之前的使用方式 相关的类
中间操作 含义: 我理解为返回当前this的(Stream) 未掉用终止操作前都不会执行???
有状态 : 我理解为 和 ?????
无状态 : 我理解为 和 产生流的数据无关每次都会返回一个全新的数据 ?? 待验证
终止操作 含义: 我理解为 返回 非Stream 的 其他类型的数据
短路 : 找到就退出
非短路 :循环完退出
--------------------------------------------------------------------------------------------------------------------------------------------