В IntelliJ IDEA, как окружить с помощью try-with-resources?

#java #intellij-idea

#java #intellij-idea

Вопрос:

В IntelliJ IDEA я могу нажать ярлык «Окружить с помощью» CTRL-ALT-T , чтобы окружить блок кода блоком try / catch, среди прочего.

Я хотел бы окружить часть ресурсов в блоке try-with-resources:

 Writer out = Files.newBufferedWriter(destination, StandardCharsets.UTF_8);
temp.process(model, out);
  

К этому:

 try (Writer out = Files.newBufferedWriter(destination, StandardCharsets.UTF_8)) {
    temp.process(model, out);
}
  

Однако эта опция недоступна при нажатии CTRL-ALT-T .

Как я могу окружить блок кода блоком try-with-resources?

Ответ №1:

Нажмите ALT-ENTER на любое выражение, представляющее an AutoCloseable .

«Окружить с помощью блока try-with-resources» — это действие намерения. Эта опция недоступна в меню «Окружить с помощью».

попробуйте с помощью скриншота ресурсов

Комментарии:

1. Если это цепной вызов метода, я считаю, что сначала мне нужно извлечь AutoCloseable его в свою собственную переменную. В частности, я имею дело со java.util.stream.Stream значениями, хотя я предполагаю, что это в целом верно.

2. Пожалуйста, что вы подразумеваете под «Намеренным действием», я не могу включить его в свое меню? как его добавить?

Ответ №2:

Добавьте .twr в конце вашего заявления.

введите описание изображения здесь

введите описание изображения здесь