首页 > 其他 > 详细

成员变量太多怎么破?

时间:2017-01-10 11:41:18      阅读:202      评论:0      收藏:0      [点我收藏+]

  在软件开发过程中我们经常遇到某个类的成员变量越来越多,显的乱糟糟的,有没有一种优雅的解决方法呢?可以使用BitArray来管理这些变量。

  

技术分享
public class BitArrayTest
        {
            private BitArray bitArray;

            public BitArrayTest()
            {
                int leng = Enum.GetValues(typeof(Flag)).Length;
                bitArray = new BitArray(leng);
            }

            public bool GetFlag(Flag flag)
            {
                lock(bitArray.SyncRoot)
                {
                    return bitArray[(int)flag];
                }
            }
            public void SetFlag(Flag flag, bool result)
            {
                lock(bitArray.SyncRoot)
                {
                    bitArray[(int)flag] = result;
                }
            }

            public void ResetFlag()
            {
                lock (bitArray.SyncRoot)
                {
                    bitArray.SetAll(false);
                }
            }

            public void SetFlagTrue(Flag flag)
            {
                SetFlag(flag, true);
            }

            public void SetFlagFalse(Flag flag)
            {
                SetFlag(flag, false);
            }
        }
View Code

 

比如有成员变量flagOne,flagTwo, flagThree,可以通过一个枚举类映射变量:

 

技术分享
public enum Flag
        {
            flagOne,
            flagTwo,
            flagThree,
        }
View Code

 

设置和读取变量:

技术分享
BitArrayTest test = new BitArrayTest();
            test.SetFlagTrue(Flag.flagOne);
            if (test.GetFlag(Flag.flagOne))
            {

            }
View Code

 

代码是不是变得整洁了呢?

成员变量太多怎么破?

原文:http://www.cnblogs.com/gujf2016/p/6268551.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!