java – 我应该在使用它们之前将我的变量初始化为null吗?
发布时间:2020-12-15 04:35:37 所属栏目:Java 来源:网络整理
导读:我看到很多SO帖子说 Java将任何未初始化的变量设置为null(如 here,here或 here ……). 但最近,我继续使用Google here编写的代码: cur = cr.query(builder.build(),INSTANCE_PROJECTION,selection,selectionArgs,null);while (cur.moveToNext()) { String ti
我看到很多SO帖子说
Java将任何未初始化的变量设置为null(如
here,here或
here ……).
但最近,我继续使用Google here编写的代码: cur = cr.query(builder.build(),INSTANCE_PROJECTION,selection,selectionArgs,null); while (cur.moveToNext()) { String title = null; long eventID = 0; long beginVal = 0; // Get the field values eventID = cur.getLong(PROJECTION_ID_INDEX); beginVal = cur.getLong(PROJECTION_BEGIN_INDEX); title = cur.getString(PROJECTION_TITLE_INDEX); // Do something with the values. ... } 我真的宁愿这样做: // Get the field values long eventID = cur.getLong(PROJECTION_ID_INDEX); long beginVal = cur.getLong(PROJECTION_BEGIN_INDEX); String title = cur.getString(PROJECTION_TITLE_INDEX); 我认为Google开发人员在某种程度上是合格的,所以我想知道,因为我们处于同一范围:宣布第一种方式而不是第二种方式的优缺点是什么? 解决方法
这是一个风格问题.我没有不必要地初始化,原因有两个:
>如果遇到未在所有控制路径上初始化的变量,那么Java编译器将为您提供额外检查,因为编译将不会成功.>它给人的印象是null是引用的可接受值,通常不是. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |