java - 如何在 IntelliJ 中停止流式 API 的扁平化

我正在使用 IntelliJ IDEA 13.1.5 编写使用流式 API 的 Java 代码,我注意到当我关闭围绕“流式”代码部分的 block 时,IDEA 会自动将“流式”代码扁平化为一行.

例如,如果我有这个方法:

public int sendMessage(Message message) {
  Response response = JerseyClientHelper.target(serverUrl)
            .header("User-Agent", userAgent)
            .post(Entity.entity(message));
  return response.getStatus();
}

我尝试将它包装在一个新的“if” block 中,然后我将输入 if 条件并打开该 block :

public int sendMessage(Message message) {
  if (message != null) {
    Response response = JerseyClientHelper.target(serverUrl)
              .header("User-Agent", userAgent)
              .post(Entity.entity(message));
    return response.getStatus();
    // Didn't type the '}' to close the block yet
}

但只要我键入 } 来关闭 block ,IntelliJ 就会将代码扁平化为一行:

public int sendMessage(Message message) {
  if (message != null) {
    Response response = JerseyClientHelper.target(serverUrl).header("User-Agent", userAgent).post(Entity.entity(message));
    return response.getStatus();
  }
}

有没有办法禁用 Fluent API 的自动扁平化?我查看了“代码样式 -> Java”和“代码样式 -> 常规”部分,但找不到与此特别相关的任何内容。

最佳答案

设置 > 代码风格 > java > 包装和大括号 > 链式方法调用

(在第 14 版中)

看起来像这样

myInstance.call()
          .again()
          .eclipseIsRubbish(true)
          .cestfin();

https://stackoverflow.com/questions/26390749/

相关文章:

vim - 在 Vim 中轻松将函数参数重新格式化为多行

java - 是否可以使用 String.format 作为条件小数点?

floating-point - 如何格式化具有特定精度和前置零的 f32?

android - HTML.fromHtml 换行符消失

python - 设置 ipython 的默认科学记数法阈值

python - 将任意文本格式化为漂亮的 HTML 的 Python 模块的名称是什么?

formatting - 抑制 Fortran 95 写入语句中的换行符

asp.net-mvc - 电话号码或社会保险号的 DisplayFormat.DataFormat

java - 是否可以在 Eclipse 中将部分 java 代码标记为不自动格式化?

bash - UNIX 统计时间格式