我们可以通过按Ctrl+Alt+T,
轻松地遍历集合
然后我想创建这样的模板来遍历map:我将这些行写入 * 模板文本 * 框:
for (Map.Entry<$ELEMENT_TYPE$> $VAR$ : $SELECTION$.entrySet()) {
$END$
}
现在,它正在生成以下代码:
HashMap<String,Object> map=new HashMap<String,Object>();
for (Map.Entry<Object> objectEntry : map.entrySet()) {
}
Map.Entry<Object>
应该是Map.Entry<String,Object>
。我找不到正确引入变量的方法。我该怎么做呢?
3条答案
按热度按时间i86rm4rw1#
如果您只键入
iter
,然后按Tab键,则会更容易。您将看到一个下拉菜单,您可以在其中选择
map.entrySet()
,它将为您提供:4si2a6ki2#
要查看可用活动模板列表:然后按Tab键。
从那里你将有一个活模板列表,iter(对于每个循环)将在列表上。
dced5bon3#
我写了这个,它在一个步骤中工作。我也喜欢有
key
和value
在那里已经,但这些可以省略:变量:
guessElementType(iterableVariable())
regularExpression(typeOfVariable(ITERABLE_TYPE),"^.*,(.*)>$", "$1")
suggestVariableName()
variableOfType("java.util.Map")
large amount of variables and functions使Live模板成为一个强大的工具。在VALUE_TYPE中,我使用正则表达式从
Map<KeyType, ValueType>
中得到ValueType
。我尝试了很多“更干净”的方法,但没有一种方法奏效。