Я создал ArrayList, перейдя по массиву значений, который создает массив в «общей» структуре ключа/значения.Как создать TreeMap ArrayList в Groovy
def timeWithIdentifier = []
for (i = 0; i <= time.size()-1; i++) {
timeWithIdentifier [i] = i + ":'" + time[i] + "'";
}
массив выглядит следующим образом:
timeWithIdentifier = [0:'1423734900000', 1:'1423735200000', 2:'1423735500000', 3:'1423735800000', 4:'1423736100000', 5:'1423736400000', 6:'1423736700000', 7:'1423737000000', 8:'1423737300000', 9:'1423737600000', 10:'1423737900000', 11:'1423738200000', 12:'1423738500000', 13:'1423738800000', 14:'1423739100000', 15:'1423739400000', 16:'1423739700000', 17:'1423740000000', 18:'1423740300000', 19:'1423740600000', 20:'1423740900000', 21:'1423741200000', 22:'1423741500000', 23:'1423741800000', 24:'1423742100000', 25:'1423742400000']
Просить класса это через timeWithIdentifier.getClass()
я получаю следующий результат java.util.ArrayList
.
Теперь я хочу поставить выше комбинацию ключ/значение в новом TreeMap с помощью следующих действий: treeMapTime = new TreeMap<Integer, Long>(timeWithIdentifier)
К сожалению, я получаю следующее сообщение об ошибке
groovy.lang.GroovyRuntimeException: Не удалось найти (java.util.ArrayList)
Что мне не хватает об этом?
Я думаю, вы ожидаете чего-то другого вместо 'timeWithIdentifier'. Тип этой переменной - 'ArrayList', это не структура ключевых значений, а простой нулевой индекс, который рекомендуется для произвольного доступа, такого как структура. См. Мой ответ для более подробной информации. –