gpt4 book ai didi

gradle - Groovy移除数组元素

转载 作者:行者123 更新时间:2023-12-03 05:07:20 27 4
gpt4 key购买 nike

我有这个gradle任务来获取zip内容并将其放入另一个zip中。
从src zip中,我想将所有内容都存储在目录“r”中并将其复制到目标zip目录“x / y / z”中。
该代码有效,但是我想知道它是否可以更优雅。

    from( zipTree("a.zip") ) {
include "r/**"
includeEmptyDirs = false
into "x/y/z"
eachFile { fcd ->
def segs1 = [fcd.relativePath.segments].flatten().findAll { it2 -> it2 != null };
segs1.removeAt(3)
fcd.relativePath = new RelativePath(true, segs1.toArray(new String[0]))
}
}

我的问题是fcd.relativePath.segments是String [],我想在其中删除索引为3的元素。
在这里,我转换为列表,然后返回数组,brrr。

有想法吗?

坦率

最佳答案

基于Java的groovy

并在Java中:

An array is a container object that holds a fixed number of values of a single type. The length of an array is established when the array is created. After creation, its length is fixed.



https://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html

因此,您可以将其转换为List,修改大小,然后再转换回array

或创建一个具有新大小的新数组,然后将所需的元素复制到其中。

关于gradle - Groovy移除数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55455748/

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