Intellij:在方法开始时移动变量

Intellij: move variables at method start

我正在使用 IntelliJ Ultimate 来处理 Java。

有这么多有用的功能,但有一个可能对我来说非常好,但我找不到...

有时我使用变量而没有预先声明它们(第一次)。然后,我在未声明的变量上使用 ctrl+Enter 功能打开菜单,并使用 select 自动声明的选项。有时它只是更快。

效果很好,问题是变量会在使用的那一行自动声明。现在,我想要 IntelliJ 中的一个函数,它可以自动将所有声明移动到方法开头的位置。它存在吗?或者我该如何实施?

不知道内置选项,虽然刚刚自动声明了变量,但您也可以拆分声明并将其发送到方法中:

  • 从变量名开始光标
  • 再次按 Alt+Enter 以显示可用的自动辅助(也在灯泡菜单上)
  • Select "Split into declaration and assignment"
  • 这会将光标留在拆分变量声明上,您可以从那里按 Alt+Shift+Up 反复移动那条线的方法

这不是您要查找的内容,但也许对您有所帮助:

你可以 select 一些你想提取到变量的表达式,然后按 Ctrl + Alt + V 组合,它会在你的方法中找到这个表达式的所有用法,并把它放在它需要的最上面适用于所有使用它的地方。

没有将所有声明移动到方法开始的功能(并且没有计划添加它,因为大多数编码指南建议声明变量尽可能接近使用)。对于您试图访问一个不可见的变量的情况,因为它是在太窄的范围内声明的,有一个 quickfix "Bring variable into scope" 可以使这个特定变量可用于此特定用途。

你当然可以写个插件把所有的变量移到最上面;可以找到插件开发文档 here.