java-stream相关内容
..
我有以下类结构 公共类商店{私有长存储ID;私人长masterStoreId;私有字符串操作符标识符;}公共类 StoreInfo {私有字符串操作符标识符;私设slaveStoreIds;公共 StoreInfo(String operatorIdentifier, Set slaveStoreIds) {极好的();this.operatorIdentifier = ope
..
..
我正在使用 Java 8(内部版本 1.8.0_25)、Netbeans 8.0.2,并且正在将一些 Java 8 功能整合到现有应用程序中.排序和 .forEach 不起作用,所以我创建了一些测试代码以确保我理解 lambda 等并诊断问题.下面是新代码以及与我系统中的数据交互的代码的组合: public void test(Registration reg) {/* 新代码 */列表
..
这是我的列表 fooList 类 Foo {私有字符串名称;私有 int 代码;私人 int 帐户;私人int时间;私人字符串其他;...构造函数,吸气剂和二传手} 例如(帐户的所有值都已设置为1) new Foo(First, 200, 1, 400, other1),新 Foo(First, 200, 1, 300, other1),新 Foo(First, 201, 1, 10, ot
..
我有类似这样的逻辑要分块处理. 列表大列表 = 获取列表();//返回一个包含 1000 个记录的大列表int startIndex=0;布尔整个ListNotProcessed=false;而(整个列表未处理){int endIndex = startIndex + 100;if(endIndex > myList.size()-1) {endIndex=myList.size()-1;}列表
..
在 Java Streams 中 - stream.max(Comparator) 和 stream.collect(Collectors.maxBy(Comparator)) 在性能方面有什么区别.两者都将根据传递的比较器获取最大值.如果是这种情况,为什么我们需要使用 collect 方法进行收集的额外步骤?我们什么时候应该选择前者还是后者?适合同时使用两者的用例场景有哪些? 解决方案
..
byte[] a = {1,2,3};System.out.println(Stream.of(a).count());字节[] b = {1,2,3};System.out.println(Stream.of(b).count()); 结果是1和3,为什么? 解决方案 Stream.of 只接受对象作为其参数.byte 不是 Object,但 byte 数组是.如果a是byte的数组
..
我的输入序列是:[1,2,3,4,5] 结果应该是:[1,12,3,14,5] 即偶数加 10,但奇数保持不变. 这是我尝试过的: public static ListincrementEvenNumbers(List 数组){列表温度 =数组.stream().filter(x->x%2==0).map(i -> i+10).collect(Coll
..
流 接口对方法 of() 有两个重载.其中一个是可变参数方法,而另一个采用单个参数. 与将一个参数传递给可变参数方法相比,单参数方法是一种性能优化吗?如果是这样,它如何提高性能?可以对 empty() 方法提出相同的问题,这似乎是可变参数 of() 周围的语法糖. 我发现这些方法的实现方式不同,区别显然在于 Spliterator 的实例化方式;但这对 Stream API 有什么好处
..
类似于Stream.findFirst(),有没有办法写Stream.findNth()? 我正在通过重写一些遗留代码来练习 Java 8.而且,我想知道如何使用 Stream API 编写以下函数. 静态 curPipeNumber = 0;/** skipToEntry() 将 'curPipeNumber' 更新为 'pipeNumber' 并返回第 ('pipeNumber') 管
..
我编写这段代码是为了将单词列表减少为有多少单词以“A"开头的长计数.我只是为了学习 Java 8 而编写它,所以我想更好地理解它[免责声明:我意识到这可能不是编写此代码的最佳方式;这只是为了练习!]. Long countOfAWords = results.stream().reduce(0L,(a, b) ->b.charAt(0) == 'A' ?一+1:一,长::总和); 中间参数/l
..
我想根据 Streams 的内容将单个 Stream 拆分为 Streams 的 Stream.生成的 Stream 应该包含原始流数据的一部分. 我的实际应用程序更复杂(它将时间间隔列表内的日志行分组),但我的问题是如何处理流,所以在这里我问一个简化的例子. 示例问题 我希望能够根据重复的相同数字将 Stream 拆分为 Stream
..
有时在处理流的步骤之间对流中的每个元素执行“某些操作"(例如打印)会很方便,例如用于调试. 一个简单的例子可能看起来像这样,不幸的是这不起作用,因为 forEach 消耗流: 列表list = new ArrayList();list.add("一个");list.add("两个");list.add("三");list.add("四");列表过滤列表 =list.stream(
..
我基本上想做这样的事情: assertEquals(Arrays.asList(1,2,3).stream().noDiscardingFilter(x -> x!=1).map(x -> x*10).collect(Collectors.toList()),Arrays.asList(1,20,30)) 这是一个例子,我不需要回答如何解决这个特定的问题,它只是一个例子来说明我要追求什么.
..
我有一些代码: directoryChooser.title = "选择目录"val 文件 = directoryChooser.showDialog(null)如果(文件!= null){var 文件 = Files.list(file.toPath()).filter { f ->f.fileName.endsWith("zip") &&f.fileName.endsWith("ZIP")&
..
有一个字符串列表,我需要构造一个对象列表,它们实际上是对(字符串,它在列表中的位置).目前我有这样的代码使用谷歌收藏: public Robots(List 名称) {ImmutableList.Builderbuilder = ImmutableList.builder();for (int i = 0; i
..
..
我有一个 Array 并想对其元素执行一些匹配. 我知道在 java 8 中可以通过两种方式完成: String[] alphabet = new String[]{“A", “B", “C"}; 任意匹配: Arrays.stream(alphabet).anyMatch("A"::equalsIgnoreCase); findAny: Arrays.stream(alphabe
..
有谁知道java.util.stream.Stream.sorted()的时间复杂度是多少? 解决方案 嗯,sorted() 本身就是 O(1),因为它是一个不消耗流的中间操作,但只是简单地向管道添加一个操作. 一旦终端操作消耗了流,就会发生排序 它什么都不做 (O(1)),因为流知道元素已经排序(例如,因为它们来自 SortedSet) 或者流不是并行的,它委托给Ar
..