java编码什么时候需要增加空格_Java编码规范之声明和空白,空格
6 聲明(Declarations)
6.1 每行聲明變量的數量(Number Per Line)
推薦一行一個聲明,因為這樣以利于寫注釋。亦即,
int level; ?// indentation level
int size; ??// size of table
要優于,
int level, size;
不要將不同類型變量的聲明放在同一行,例如:
int foo, fooarray[]; //WRONG!
注意:上面的例子中,在類型和標識符之間放了一個空格,另一種被允許的替代方式是使用制表符:
int ???????level; ?????????// indentation level
int ???????size; ??????????// size of table
Object ????currentEntry; ??// currently selected table entry
6.2 初始化(Initialization)
盡量在聲明局部變量的同時初始化。唯一不這么做的理由是變量的初始值依賴于某些先前發生的計算。
6.3 布局(Placement)
只在代碼塊的開始處聲明變量。(一個塊是指任何被包含在大括號"{"和"}"中間的代碼。)不要在首次用到該變量時才聲明之。這會把注意力不集中的程序員搞糊涂,同時會妨礙代碼在該作用域內的可
移植性。
void myMethod() {
int int1 = 0; ????????? // beginning of method block
if (condition) {
int int2 = 0;?????? // beginning of "if" block
...
}
}
該規則的一個例外是for循環的索引變量
for (int i = 0; i < maxLoops; i++) { ... }
避免聲明的局部變量覆蓋上一級聲明的變量。例如,不要在內部代碼塊中聲明相同的變量名:
int count;
...
myMethod() {
if (condition) {
int count = 0; ????// AVOID!
...
}
...
}
6.4 類和接口的聲明(Class and Interface Declarations)
當編寫類和接口是,應該遵守以下格式規則:
- 在方法名與其參數列表之前的左括號"("間不要有空格- 左大括號"{"位于聲明語句同行的末尾- 右大括號"}"另起一行,與相應的聲明語句對齊,除非是一個空語句,"}"應緊跟在"{"之后
class Sample extends Object {
int ivar1;
int ivar2;
Sample(int i, int j) {
ivar1 = i;
ivar2 = j;
}
int emptyMethod() {}
...
}
-方法與方法之間以空行分隔
8 空白(White Space)
8.1 空行(Blank Lines)
空行將邏輯相關的代碼段分隔開,以提高可讀性。
下列情況應該總是使用兩個空行:
- 一個源文件的兩個片段(section)之間
- 類聲明和接口聲明之間
下列情況應該總是使用一個空行:
- 兩個方法之間
- 方法內的局部變量和方法的第一條語句之間
- 塊注釋(參見"5.1.1")或單行注釋(參見"5.1.2")之前
- 一個方法內的兩個邏輯段之間,用以提高可讀性
8.2 空格(Blank Spaces)
下列情況應該使用空格:
- 一個緊跟著括號的關鍵字應該被空格分開,例如:
while (true) {
...
}
注意:空格不應該置于方法名與其左括號之間。這將有助于區分關鍵字和方法調用。
- 空白應該位于參數列表中逗號的后面(下面的例子中有)
- 所有的二元運算符,除了".",應該使用空格將之與操作數分開。
一元操作符和操作數之間不因該加空格,比如:負號("-")、自增("++")和自減("--")。例如:
a += c + d;
a = (a + b) / (c * d);
while (d++ = s++) {
n++;
}
printSize("size is " + foo + "\n");
- for語句中的表達式應該被空格分開,例如:
for (expr1; expr2; expr3)
- 強制轉型后應該跟一個空格,例如:
myMethod((byte) aNum, (Object) x);
myMethod((int) (cp + 5), ((int) (i + 3)) + 1);
總結
以上是生活随笔為你收集整理的java编码什么时候需要增加空格_Java编码规范之声明和空白,空格的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: std::multimap
- 下一篇: 基因组印记