Я новичок в кодировании и Groovy. У меня есть требование заполнять значения карты данных на основе значений в списке, но с критерием соответствия. Например, скажем, 2-й символ значения списка равен 2, затем сопоставьте его с ключом «Number2» на карте данных. Точно так же я могу получить несколько значений списка, соответствующих этому критерию. Я борюсь с приведенным ниже кодом - он работает, но он всегда фиксирует последнее вхождение соответствующего значения в списке. Насколько я понимаю, у вас может быть только одна уникальная пара ключ-значение на карте. Но есть ли другой способ достичь этого? Извините, я полная ладья ie здесь. Вся помощь приветствуется. Спасибо!
def map = [:]
def ent = ['123','133','124','143','125']
ent.each{
println it.charAt(1)
}
ent.each{
if(it.charAt(1) == '2'){
println it.charAt(1)
println "is in entity $it"
map['Number2'] = it
map.each{ k, v -> println "${k}:${v}" }
}
}
Ожидаемый результат:
['Number2':[123,124,125],'Number3':[133],'Number4':[143]]