我刚与同事讨论一种方法,用法看起来有点像这样:
String myString = getString(fields [10],true);
现在这是我的问题, true 做了什么?
显而易见的答案是查看方法定义并查看它对布尔值的作用,但为什么我需要这样做呢?是否有更好的编码风格可以解释方法调用中布尔值的用途?
我认为最初要改变接受特定字符串的方法,但这太松散了。
我能想到的最好的想法是创建一个本地布尔值,如下所示:
boolean thisShouldBeUpperCased = true;
String myString = getString(fields [10],thisShouldBeUpperCased);
之前有没有人遇到过这种情况,还有更好的方法吗?
答案 0 :(得分:0)
通常使用C语言,您可以使用consts或enums来提高可读性,例如
const bool kConvertToUpperCase = true;
const bool kDoNotConvertToUpperCase = false;
或
enum {
kDoNotConvertToUpperCase,
kConvertToUpperCase
};
上述方法也允许可扩展性,例如,如果一个设计最初为特定参数调用两个可能的选项,然后可以实现为布尔值,但是后来这变成了三个(或更多)选项,需要一个int或一个枚举 - 你不需要切换表单明确的true
/ false
文字到处都是等值。
E.g。
const int kConvertToLowerCase = 2;
const int kConvertToUpperCase = 1;
const int kDoNotConvertToUpperCase = 0;
或
enum {
kDoNotConvertToUpperCase,
kConvertToUpperCase,
kConvertToLowerCase
};