首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

关于实体的循环取值的有关问题,因扰了好久了

2012-03-16 
关于实体的循环取值的问题,因扰了好久了!现在项目中有一个实体类A 实体类中的有20个对象,分别是,a1,a2,a3,

关于实体的循环取值的问题,因扰了好久了!
现在项目中有一个实体类A 实体类中的有20个对象,分别是,a1,a2,a3,a4......a20现在想循环取值不知怎么样能把a后面的数字进行循环,达到的效果是这样:
for(int i=1;i<=20;i++)
{
  string strValue = A.a和i的组合例如(a1,a2...a20);
}
不知“A.a和i的组合例如(a1,a2...a20)”这个地方该如何组合才能得到值。
高手请指点下啊,本人小菜菜,这个问题困扰了好长时间了。

[解决办法]

C# code
public class MiniHashtable    {        struct StructNameValue        {            public Object itemName;            public Object itemValue;            public void SetValue(Object objName, Object objValue)            {                itemName = objName;                itemValue = objValue;            }                    }        private ArrayList m_alNV;        public MiniHashtable()        {            m_alNV = new ArrayList();        }               public void Add(Object objName, Object objValue)        {            StructNameValue snvItem = new StructNameValue();            snvItem.SetValue(objName, objValue);            m_alNV.Add(snvItem);        }                public Object this[Object objName]        {            get            {                for (int i = 0; i < m_alNV.Count; i++)                {                    StructNameValue snvItem = (StructNameValue)m_alNV[i];                    if (snvItem.itemName.Equals(objName))                        return snvItem.itemValue;                }                return null;            }        }        public Object this[int iIndex]        {            get            {                if (iIndex < m_alNV.Count)                {                    StructNameValue snvItem = (StructNameValue)m_alNV[iIndex];                    return snvItem.itemValue;                }                else                {                    return null;                }            }         }        public Object Name(int iIndex)        {            if (iIndex < m_alNV.Count)            {                StructNameValue snvItem = (StructNameValue)m_alNV[iIndex];                return snvItem.itemName;            }            else            {                return null;            }        }        public int Length        {            get            {                return m_alNV.Count;            }        }        public void Clear()        {            m_alNV.Clear();        }    }
[解决办法]
1:
string strValue = A.a和i的组合例如(a1,a2...a20); 

for(int i=1;i<=20;i++)
string strValue="A.a"+i.toString();

2:
更好的方法,建立一个object型的List或者ArrayList,把你的对象全放进去,
要是知道个数用for循环遍历,如果不知道个数就用foreach实现遍历

热点排行