gpt4 book ai didi

java - 如何在 IntStream 上调用 map() 并返回不同的类型?

转载 作者:行者123 更新时间:2023-11-30 09:06:07 25 4
gpt4 key购买 nike

我想这样做:

            IntStream.range(0, fileNames.size())
.map(i -> "mvn deploy:deploy-file" +
" -DrepositoryId=" + REPO_ID +
" -Durl=" + REPO_URL +
" -Dfile=" + LIBS + fileNames.get(i) +
" -DgroupId=" + GROUP_ID +
" -DartifactId=" + artifactName.get(i) +
" -Dversion=" + versionNumbers.get(i) +
" -DgeneratePom=true;")
.collect(Collectors.toList());

但这不会编译,因为 map() 传入一个 int 并返回一个 int。如何从 int 映射到 String

PS:有没有更地道的方式来编写这段代码?

最佳答案

IntStream为此有一个 mapToObj 方法。有了它的泛型,也不需要强制转换:

        IntStream.range(0, fileNames.size())
.mapToObj(i -> "mvn deploy:deploy-file" +
" -DrepositoryId=" + REPO_ID +
" -Durl=" + REPO_URL +
" -Dfile=" + LIBS + fileNames.get(i) +
" -DgroupId=" + GROUP_ID +
" -DartifactId=" + artifactName.get(i) +
" -Dversion=" + versionNumbers.get(i) +
" -DgeneratePom=true")
.map(s -> s + ";")
.collect(Collectors.toList());

关于java - 如何在 IntStream 上调用 map() 并返回不同的类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24564894/

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