2016-11-10 5 views
0

Мне нужно найти минимальное значение массива, а затем удалить его.Groovy pop min from array

Как я могу использовать min() и pop() в одном заявлении?

Итак, у меня есть пять файлов, число (1,2,3,4,5) в цикле. После обработки первого файла мне нужно удалить его.

Когда я делаю поп в одиночку, он подбирает номер файла 5 и отбрасывает его, а затем обрабатывает следующий файл 4 и т. Д.

мне нужно изменить порядок, который файлы обрабатываемые:

def fileName = fileList.pop() 
def testCaseName = fileName[0..-5] 

ответ

1

Вместо pop() элементов списка, если вы хотите, чтобы петля списка того, почему вы не используете each для перебора списка в желаемом порядке:

fileList.each{ fileName -> 
    def testCaseName = fileName[0..-5] 
    ... 
} 

Или, если вы не можете использовать each и вы должны иметь оставшиеся элементы в списке, вы можете использовать reverse() перед запуском pop() Инг элементы:

fileList = fileList.reverse() 
def fileName = fileList.pop() 
def testCaseName = fileName[0..-5] 
...