用于为每个循环包装可迭代选择的Eclipse模板

时间:2010-08-19 16:08:30

标签: java eclipse

我想选择一个Iterable,按下Alt + Shift + Z以获取“Surround With”上下文菜单,并显示一个foreachwrap模板,该选择模板将以适当的格式将选择包装在每个循环中。

例如,我想选择

someObject.getSomeList()

并生成此

for (SomeListType someListType : someObject.getSomeList()) {

}

我尝试过类似的东西,但它似乎不起作用:

for( ${t:elemType(ls)} ${:name(t)} : ${ls:line_selection} )
{
    ${cursor}
}

1 个答案:

答案 0 :(得分:5)

在Win / Lin上使用QuickFix {Ctrl+1或在Mac上使用Cmd+1

您可以使用以下方法获得所需的行为:

  1. 编写返回可迭代集合的语句,例如

    someObject.getSomeList()
    
  2. Ctrl+1(Mac上为Cmd+1)并选择Assign statement to a new local variable(此操作甚至可以直接组合(Mac上为Cmd + 2 L),但是,如果你想使用它,它可能取决于你想记住多少不同的组合)

  3. 只写

    fore
    

    然后再次按Ctrl+1Cmd+1),然后选择Iterate over an array or iterable(只需在出现quickfix菜单后立即按Enter键)就可以得到如下内容:

    for (Content content : someList) {
    
    }
    
  4. 您现在甚至可以内联局部变量的用法来再次删除它(当然使用QuickFix)。 QuickFix非常强大,因为该功能已经发布,我几乎没有使用任何模板。