小编Sur*_*ert的帖子

Spliterator Java 8

我有一个1到10,000的数字存储在一个数组中long.按顺序添加它们将得到50,005,000的结果.
我编写了一个Spliterator,如果一个数组的大小超过1000,它将被拆分为另一个数组.这是我的代码.但是当我运行它时,添加的结果远远超过50,005,000.有人能告诉我我的代码有什么问题吗?

非常感谢.

import java.util.Arrays;
import java.util.Optional;
import java.util.Spliterator;
import java.util.function.Consumer;
import java.util.stream.LongStream;
import java.util.stream.Stream;
import java.util.stream.StreamSupport;

public class SumSpliterator implements Spliterator<Long> {

    private final long[] numbers;
    private int currentPosition = 0;

    public SumSpliterator(long[] numbers) {
        super();
        this.numbers = numbers;
    }

    @Override
    public boolean tryAdvance(Consumer<? super Long> action) {
        action.accept(numbers[currentPosition++]);
        return currentPosition < numbers.length;
    }

    @Override
    public long estimateSize() {
        return numbers.length - currentPosition;
    }

    @Override
    public int characteristics() {
        return SUBSIZED;
    }

    @Override
    public Spliterator<Long> trySplit() { …
Run Code Online (Sandbox Code Playgroud)

java-8 spliterator

2
推荐指数
1
解决办法
1228
查看次数

将 Slidable 与 onPressed 一起使用时出现问题。(flutter_slidable: ^1.2.0)

我遇到了麻烦flutter_slidable: ^1.2.0
看下面的代码

import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
import 'package:flutter_slidable/flutter_slidable.dart';

class SlidableWidget extends StatelessWidget {
  final Widget child;
  final void Function(BuildContext context) onDismissed;

  const SlidableWidget({required this.child, required this.onDismissed, Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) => Slidable(
        child: child,
        endActionPane: const ActionPane(motion: ScrollMotion(), children: [
          SlidableAction(
            flex: 1,
            onPressed: this.onDismissed(context),
            backgroundColor: Colors.red,
            foregroundColor: Colors.white,
            icon: Icons.delete,
            label: 'Delete',
          ),
        ],
        extentRatio: 0.2,),
      );
}
Run Code Online (Sandbox Code Playgroud)

我希望onDismissed函数作为参数传递,但在线上onPressed: this.onDismissed(context),这是不正确的。它说Invalid const value。但我不知道出了什么问题以及如何解决。谁能给我解释一下吗?

太感谢了。

苏拉

flutter

2
推荐指数
1
解决办法
2337
查看次数

标签 统计

flutter ×1

java-8 ×1

spliterator ×1