Java 缩进

2025年3月17日 | 阅读 3 分钟

在编程中,缩进就像格式化一样。它被用来使代码对其他用户更具可读性,因为它使代码更容易编辑,显示花括号的匹配方式,并以组织良好的方式展示程序的逻辑。它向读者表明,他/她即将进入程序的一个新部分。

通常,缩进的单位是 4 个空格。制表符会扩展到 8 个空格。

  • 始终将行长度保持在 80 个字符以内。
  • 换行
    1. 在逗号后或运算符前
    2. 尝试在换行前使行接近 80 个字符
    3. 新行必须与上一行表达式的开头对齐。
    4. 如果以上操作导致代码混乱,请将其缩进 8 个空格。

缩进的目标是展示程序的逻辑。我们必须在整个程序中保持缩进,因为它是格式化的重要组成部分。

对于位于左花括号和右花括号内的语句,将缩进增加两个空格。当一对花括号嵌套在这些花括号内时,将缩进再增加两个空格。将花括号垂直对齐是一个好的做法。

请记住,缩进的功能是使程序更具可读性和可理解性,从而在编辑或优化代码时节省大量时间。

Java 中使用的花括号遵循Kernighan 和 Ritchie 风格(K & R 风格)来缩进非空块和块状构造。

  • 在开花括号前不换行。
  • 在开花括号后换行。
  • 在闭花括号前换行。
  • 仅当闭花括号终止了一个语句或终止了一个方法、构造函数或命名类的正文时,才在该闭花括号后换行。例如,如果闭花括号后面是 else 或逗号,则不换行。

让我们考虑以下代码片段。

空块或块状构造可以采用 K & R 风格。另一方面,它可以立即在打开后关闭,中间没有字符或换行符 ({}),除非它是多块语句(如 try/catch 和 finally)的一部分。例如,请考虑以下代码片段。

将开花括号保留在同一行。每个后续包含的块都需要缩进,因此在查看代码时更容易阅读。请记住,如果我们正在构建商业软件,每一行代码都只编写一次,但会读取 2-6 次,因此通过正确格式化代码,我们将为他人提供便利。

Strring.indent() 方法

Java 还提供了 indent() 方法,该方法根据 count 值提供字符串的缩进。它还可以规范化行终止符。

语法

其中 count 表示要添加或删除的空格数。请注意,count 的值可以是正数或负数。正值表示添加空格,负值表示删除空格。如果尚未提供换行符,它将自动添加一个换行符。

  • 如果 count 的值大于 0,则在每行的开头添加空格。
  • 如果 count 的值小于 0,则从每行的开头删除空格。
  • 如果 count 的值大于前导空格,则删除所有前导空格。
  • 如果 count 的值为 0,它只会更改行终止符。

IndentExample.java

输出

Java indentation