gpt4 book ai didi

java - 如何使用流 api 进行可重复的操作

转载 作者:搜寻专家 更新时间:2023-10-31 19:43:00 25 4
gpt4 key购买 nike

我想知道如何在 Stream Api 的帮助下缩短我的代码。假设我有这样的方法:

public static void createFile( String directoryPath, String fileName )

我想用相同的参数调用这个方法 5 次。例如

        for (int i = 0; i < 5; i++) {
Utils.createFile(getDirectoryLocation(), "test.txt");
}

我知道我可以做这样的事情:

IntStream.rangeClosed(1, 5).forEach(Utils::someMethod);

但在这里我将一个整数值传递给方法。谁能给我一些提示或答案?

最佳答案

Streams 在这里并没有多大用处,在我看来,一个简单的循环会更好。但是,如果您真的想要,您可以通过 lambda 来编写它(忽略 x...):

IntStream.rangeClosed(1, 5).forEach(x -> Utils.createFile(getDirectoryLocation(), "test.txt"));

我想还有一种更丑陋的方式是:

Stream.generate(() -> "test.txt")
.limit(5)
.forEach(x -> Utils.createFile(getDirectoryLocation(), x));

或者更好:

Collections.nCopies(5, "test.txt")
.forEach(x -> Utils.createFile(getDirectoryLocation(), x));

关于java - 如何使用流 api 进行可重复的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52162351/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com