【发布时间】:2011-03-22 14:01:03
【问题描述】:
我们的数据库中有一个字段表示一周中每一天的真/假标志,如下所示:'1111110'
我需要将此值转换为布尔数组。
为此,我编写了以下代码:
char[] freqs = weekdayFrequency.ToCharArray();
bool[] weekdaysEnabled = new bool[]{
Convert.ToBoolean(int.Parse(freqs[0].ToString())),
Convert.ToBoolean(int.Parse(freqs[1].ToString())),
Convert.ToBoolean(int.Parse(freqs[2].ToString())),
Convert.ToBoolean(int.Parse(freqs[3].ToString())),
Convert.ToBoolean(int.Parse(freqs[4].ToString())),
Convert.ToBoolean(int.Parse(freqs[5].ToString())),
Convert.ToBoolean(int.Parse(freqs[6].ToString()))
};
而且我发现这种方式过于笨拙,因为转换次数很多。
将这个固定长度的字符串转换为布尔数组的理想/最干净的方法是什么??
我知道您可以在 for 循环中编写此代码,但一周中的天数永远不会改变,因此我认为这是更高效的方式。
【问题讨论】: