Как добавить возраст в ageList = [12,13,23] - PullRequest
0 голосов
/ 08 апреля 2010

может быть слишком простой вопрос, но .... пожалуйста, помогите

У меня есть такой список:

def ageList =[12,13,23]

Я хочу получить это:

def newAgeList =[age:12,age:13,age:23]

Кто-нибудь может мне помочь?

Большое вам спасибо!

Ответы [ 2 ]

3 голосов
/ 08 апреля 2010

Это у вас работает?

def newAgeList = ageList.inject([:]) { map, item -> if (!map['age']) map['age'] = []; map['age'] << item; map }

его приведет к: ['age':[12, 13, 23]]

В противном случае вы можете получить буквальное значение как что-то вроде:

def newAgeList = ageList.collect { "age:$it" }

его приведет к: ['age:12', 'age:13', 'age:23']

Третий вариант:

def newAgeList = ageList.collect { ['age':it] }

Это приведет к: [['age':12], ['age':13], ['age':23]]

К сожалению, вы не можете сделать это как карту, как показано выше, так как ключи карты должны быть уникальными.

На самом деле все зависит от того, что вы пытаетесь сделать с результатом.

0 голосов
/ 08 апреля 2010

Не знаю, возможно ли это, так как вы хотите использовать один и тот же ключ карты 'age' для трех разных значений. В итоге вы перезапишете существующее значение новым значением.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...