我发现很难提出这个问题。基本上我想要一些旧的代码包装旧的。我习惯于在一些编辑器中通过简单地选择旧版本来执行此操作,键入新版本,一旦完成它将自动替换新内部的旧代码。这就是我的意思:
int i = 5;
现在我要打印这个,但我忘了先写System.out.prinln()。
int // oeps I forgot that I wanted to System.out.println this statement
现在我当然可以删除int,编写System.out.println()并再次写入int。但我不希望这样。我希望它能记住我(过)写的内容并将其作为参数放回去。这是视觉上的:
选择旧版:
开始输入并替换旧的:
差不多完成了:
这是魔术发生的地方,旧线显示为参数输入。这就是我想要的,但它不会自动运行:
Intellij可以这样做吗?我经常开始输入一些稍后被其他内联代码包装的东西。
答案 0 :(得分:3)
使用sout live模板,这很容易,至少在版本14中:在“exampleInt”之后,键入一个点,并向您推荐“sout”,这将完全符合您的要求。
对于任何方法调用,如果使用完整语句功能,这也很容易。你开始在“exampleInt”之前输入但不会覆盖它。您键入autopopup完成所需的内容,以建议您使用该方法,例如: “System.out.priexampleInt”。如果在弹出列表中选择了正确的方法,请按Edit |的快捷方式完整的当前声明(在Windows / Linux上按Ctrl + Shift + Enter)。因此,在插入作为参数的插入符后,您将获得已完成的方法调用:“System.out.println(exampleInt)”。
答案 1 :(得分:1)
正如彼得的回答所述,似乎第14版有这样做的诱惑。
对于我们这些年龄较大的intellij版本,以下内容可能有所帮助:
你最好的拍摄要么是'#34;剪切和粘贴":ctrl X + sout + tab + ctrl V
或使用智能完成:DEL + sout + tab + ctrl shift SPACE