如何从此示例中的其他方法访问数组?我是c#的新手,如果你能帮助我,我真的很感激。提前谢谢!
private void button1_Click(object sender, EventArgs e) {
int[] array1 = new int[5];
for (int i = 0; i < 5; i++) {
array1[i] = i;
}
}
private void button2_Click(object sender, EventArgs e) {
int[] array2 = new int[5];
for (int i = 0; i < 5; i++) {
array2[i] = array1[i];
}
}
答案 0 :(得分:1)
将两个数组声明为外部以启用访问。
int[] array1, array2;
private void button1_Click(object sender, EventArgs e) {
array1 = new int[5];
for (int i = 0; i < 5; i++) {
array1[i] = i;
}
}
private void button2_Click(object sender, EventArgs e) {
array2 = new int[5];
for (int i = 0; i < 5; i++) {
array2[i] = array1[i];
}
}
答案 1 :(得分:1)
正如Jon Skeet在他的评论中所提到的,局部变量根据定义是定义它们的方法的局部变量。如果你想要一些全局可见的东西,你需要把它变成一个实例变量,或者从方法中返回它。
假设只需要显示array1
,就足以在外面声明那个。
// Declare the array globally.
int[] array1 = new int[5];
private void button1_Click(object sender, EventArgs e)
{
// Initially the array inside this method.
for(int i=0;i<5;i++)
array1[i]=i;
}
private void button2_Click(object sender, EventArgs e)
{
int[] array2 = new int[5];
// Copy from the global array
for(int i=0;i<5;i++)
{
array2[i]=array1[1];
}
}