简化重复方法调用中的重复

时间:2016-05-17 07:45:09

标签: c#

我有一个重复的方法调用,如下所示:

GroupGenerator(param1, enum.val1, true, false, false)

每次调用时,布尔值都会更改以涵盖所有可能的组合,

true, false, false
true, true, false
etc etc

如果没有一遍又一遍地写一行GroupGenerator(param1...,有没有更简洁的方法呢?

非常感谢任何帮助/意见。

1 个答案:

答案 0 :(得分:7)

true, false, false在二进制文件中有效100true, true, false110。考虑到这一点,

public static bool GetBit(byte b, int bitNumber) 
{
  return (b & (1 << bitNumber)) != 0;
}

for(byte n = 0; n < 8; n++)
  GroupGenerator(param1, enum.val1, GetBit(n, 0), GetBit(n, 1), GetBit(n, 2));