java代码样式问题 - for循环

Chr*_*ris 1 java coding-style

以下代码是否清晰易读?

public void createDatabase() throws SQLException, IOException {
    SQLiteDatabase database = dbStore.getDatabase();
    LineNumberReader scriptInputReader = new LineNumberReader(new InputStreamReader(getClass().getResourceAsStream(SCRIPT_CREATE)));
    for(String line; (line = scriptInputReader.readLine()) != null;) {
        database.execSQL(line);
    }
}
Run Code Online (Sandbox Code Playgroud)

我写了很多像上面那样的"for"循环.对我来说它看起来很清楚 - 它显示了循环中使用的临时变量("line"),限制了它的范围并指出循环结束时(当"readLine"返回"null"时).我想知道其他程序员是否会讨厌那些......

或者这个:

    SQLiteDatabase database = dbStore.getDatabase();
    Cursor cursor = database.query("PINS", new String [] {"ID", "X", "Y"}, null, null, null, null, "ID");
    if(cursor.moveToFirst()) {
        for(; !cursor.isAfterLast(); cursor.moveToNext()) {
            (...)
        }
    }
    cursor.close();
Run Code Online (Sandbox Code Playgroud)

像上面这样的东西只是"整洁"还是已经是Java难题?

Jar*_*iuk 7

我选择:

String line = null;
while((line = scriptInputReader.readLine()) != null) {
  ... do stuff with line
}
Run Code Online (Sandbox Code Playgroud)

这很简单明了.