用于包装多行函数参数的Intellij代码样式设置

jav*_*dba 24 intellij-idea

Spark代码样式需要四个字符缩进多参数方法.所以:以下代码 - 目前由IJ格式化 - 是不正确的:

def generateCirclesRdd(sc: SparkContext,
                       nCircles: Int = 3,
                       nTotalPoints: Int = 30,
                       outerRadius: Double): RDD[(Long, Long, Double)] = {
Run Code Online (Sandbox Code Playgroud)

显然应该是:

def generateCirclesRdd(sc: SparkContext,
    nCircles: Int = 3,
    nTotalPoints: Int = 30,
    outerRadius: Double): RDD[(Long, Long, Double)] = {
Run Code Online (Sandbox Code Playgroud)

IJ代码风格中的此设置在哪里?屏幕截图显示了我能够找到的内容.

在此输入图像描述

更新这里有关于"标签和缩进"的评论它是:

在此输入图像描述

另一个更新:@yole提供了一个有用的答案.但是,我仍然留下2个空格而不是4个续点.

作为参考,这是Spark中正确/必需的缩进.注意方法声明的延续是4个空格.

  def train(
      data: RDD[Vector],
      k: Int,
      maxIterations: Int,
      runs: Int,
      initializationMode: String,
      seed: Long): KMeansModel = {
Run Code Online (Sandbox Code Playgroud)

但是,方法调用的延续只有两个:

    new KMeans().setK(k)
      .setMaxIterations(maxIterations)
      .setRuns(runs)
      .setInitializationMode(initializationMode)
      .setSeed(seed)
      .run(data)
Run Code Online (Sandbox Code Playgroud)

yol*_*ole 32

取消选中"方法声明参数|多线对齐"并启用"使用参数的常规缩进".

  • 我在2017年IJ中没有看到"使用参数的常规缩进"设置 (5认同)

Kau*_*hal 12

您必须更改两个选项

  1. 取消选中方法声明参数| 多线时对齐

在此输入图像描述

  1. 检查其他| 构造函数args的替代缩进和带有4个空格的参数声明

在此输入图像描述


小智 5

在2017中,选中所有设置/编辑器/代码样式/ Java /包装和花括号选项,其中多行时行名称为Allign。对我来说,它是在Chained Method调用中检查的,这使这些长缩进。只是取消选中它们。