如何删除 IntelliJ IDEA 中周围的代码块?

How to remove surrounding code block in IntelliJ IDEA?

在 IntelliJ IDEA 中,是否有快捷方式以上下文感知的方式删除选择周围的代码块(控制结构)?在此示例中,我想删除外部 if 块。

改造这个

if (foo) { // Unnecessary if block

  a();

  if (bar) {
    b();
  } else {
    c();
  }
} else {
  d();
}

至此

a();

if (bar) {
  b();
} else {
  c();
}

使用Code | Unwrap/Remove操作(Cmd+Shift+删除 Mac 或 Ctrl+Shift+Delete on Windows)。它将弹出一个列表,您可以在其中 select 要删除的周围结构。