Подтвердить что ты не робот

В скорости вы можете выполнить итерацию через набор ввода хэш-символов java()?

Можете ли вы сделать что-то подобное в шаблоне скорости?

#set ($map = $myobject.getMap() )
#foreach ($mapEntry in $map.entrySet())
    <name>$mapEntry.key()</name>
    <value>$mapEntry.value()</value>
#end

он выводит пустые теги следующим образом:

<name></name> 

и

<value></value> 

Что я делаю неправильно?

4b9b3361

Ответ 1

Ваша ошибка связана с ключом и значением как методы (с конечной скобкой "()", а не как свойствами. Попробуйте следующее:

#set ($map = $myobject.getMap() )
#foreach ($mapEntry in $map.entrySet())
    <name>$mapEntry.key</name>
    <value>$mapEntry.value</value>
#end

Другими словами, используйте либо свойство, например mapEntry.key, либо метод, например mapEntry.getKey().

Ответ 2

Я ищу способ прокрутки HashMap по скорости, и это тоже будет работать.

#set ($map = $myobject.getMap())
#foreach( $key in $map.keySet())
      <name>$key</name>
      <value>$resume.get($key)</value>
#end

Точно так же, как вы можете пропустить HashMap в java.

Ответ 3

Здесь значение

itemsValue={data1=1,data2=2,data3=3}

Итак, нам нужно перебрать группу значений,

foreach ($key in ${itemsValue.keySet()})
   if($itemsValue.get($key)==1)
        Condition
   end
end

В приведенном выше коде мы можем видеть, что значение будет выглядеть как "data1, data2 и т.д." но после использования get() мы можем получить значение экземпляра.

Ответ 4

Чтобы прояснить (я не могу комментировать), в общем, вы можете использовать либо методы get Java, либо заменить их соответствующим именем без малой буквы и без ().

So $mapEntry.getKey() или map.key.