Intellij Idea IntelliJ -代码格式化,一个线性方法大括号前的空格

xfyts7mz  于 2023-10-15  发布在  其他
关注(0)|答案(1)|浏览(169)

我喜欢把简单的方法,比如getter和setter,放在一行上。为了实现它,我需要使用CTRL+J(连接线),它工作得很好,但它不会在左括号和左花括号之间添加空格。

实际情况

public String getAddress()  { return address;} <--Missing space

预期效果

public String getAddress()  { return address; }

我在玩代码风格的规则,但似乎没有什么工作。
将单个语句方法自动放在一行上会很好,避免了在每个方法上使用CTRL+J的需要。

错误

public String concatAddress() { String x = "abcdefghi"; return address + x; }

public String concatAddress() {
    String x = "abcdefghi";
    return address + x;
}

这两个“问题”都解决了,自动格式化将把简单的方法放在一行上,并正确地格式化它们,同时像往常一样格式化多行方法。
我不明白为什么在“空格”选项卡中,有“前左括号”设置,而没有“x右括号”在所有。

gk7wooem

gk7wooem1#

您希望在Intellij中为此行为启用的两个设置位于代码样式下,它们是:

  • 首选项>编辑器>代码样式> Java >空格>范围:代码支架
  • 首选项>编辑器>代码样式> Java > Package 和大括号:简单方法一行

这种行为似乎在最近版本的IntelliJ中发生了变化,因为我的模板在没有Within的情况下停止了正常工作:Code Braces部分启用(似乎有什么东西关闭了我的Simple Methods一行设置,因为这是在我自己的IDE设置文档中,并且在更新后不再打开)。

相关问题