我遇到了一个疑问:这两种获取布尔值的方式有什么区别?最终结果是相同的,但是使用一种或另一种的优缺点是什么?最常用的方法是什么?这种编码风格的最佳做法是什么?
动态布尔表达式变量
...
public class MainActivity extends AppCompatActivity {
private boolean isVersionM = Build.VERSION.SDK_INT >= Build.VERSION_CODES.M;
....
private void onCreate(Bundle savedInstanceState) {
....
if (isVersionM) {
...
}
else {
...
}
...
}
....
}
布尔函数
...
public class MainActivity extends AppCompatActivity {
....
private void onCreate(Bundle savedInstanceState) {
....
if (isVersionM()) {
...
}
else {
...
}
...
}
...
private boolean isVersionM() {
return Build.VERSION.SDK_INT >= Build.VERSION_CODES.M;
}
...
}
答案 0 :(得分:0)
这是做一件事情的两种方法。但是,如果您要计算一些运行时值,那将需要第二种方法。
这种编码风格的最佳做法是什么
第二,因为您无需更改运行时计算方法(如以下方法)的样式。
private boolean isUserLoggedIn() {
return PreferenceManager.getString("token") != null;
}