我一直在关注Udacity的Android应用MOOC简介,并且通过查看该课程的示例代码,已经学习了很多关于良好编码实践的知识。然而,今天我发现了一些有点令人费解的事情:
// Third Step: Insert ContentValues into database and get a row ID back
long locationRowId;
locationRowId = db.insert(WeatherContract.LocationEntry.TABLE_NAME, null, testValues);
为什么locationRowId
在单独的一行宣布?将上面的代码更改为
long locationRowId = db.insert(WeatherContract.LocationEntry.TABLE_NAME, null, testValues);
包含额外步骤是否有特殊原因?或者我可以安全地使用单行版本。
由于
答案 0 :(得分:2)
是的,您可以安全地使用单行版本!如上所述,我认为这只是你的偏好。没有必要也不反对这样做。但是选择一个选项并因此使用它并且不要在它们之间切换以获得干净的代码; - )
答案 1 :(得分:2)
两者之间没有区别。 我能想到的最佳实践是 - 在使用之前不要声明局部变量。
如果在需要之前声明局部变量,则会增加变量的范围,并且还可能增加错误的可能性。
在某些情况下,您必须在使用变量之前声明它们。以下是一个这样的例子。
String line = null;
while (( line = br.readLine()) != null) {
buff.append(line);
}
这取决于您声明变量的地方,但没有严格的规则可以遵循。
答案 2 :(得分:0)
没关系,因为你正在做同样的操作。两个表达式都是正确的,但更好的看起来是第二个。当然,这取决于你想要什么,在哪里。如果您想使用其中一些,请使用一个。不要混合它们
答案 3 :(得分:0)
如果要声明全局变量,则将其声明为另一行。这意味着在不同的方法中使用相同的变量。如果在方法中使用变量,则无需在不同的行中启动。