问题描述
我正在尝试访问存储在 foreach 上的数组列表中的类的方法,但它不起作用。 例如:
有以下课程:
class MyClass
{
private int number;
public MyClass()
{
this.number = 0;
}
public void addNumber(int add)
{
this.number += add;
}
}
如果在我的主课中我这样做:
MyClass myclass = new MyClass();
ArrayList myarray = new ArrayList();
myarray.Add(myclass);
foreach ( MyClass mclss in myarray )
{
mclss.addNumber(2);
}
它说“mclss 不包含 addNumber 的任何定义...” 我该怎么做?
感谢您的帮助!
解决方法
使用 List 而不是 ArrayList 按预期工作。
,您需要关闭 foreach 括号。 即,
foreach(MyClass mclss in myarray)
否则,这将构建并运行良好。