问题遇到的现象和发生背景
C#变量名是变量,如何修改变量的值
用代码块功能插入代码,请勿粘贴截图。 不用代码块回答率下降 50%
例如:
int number1=1;
int number2=2;
int number3=3;
int number4=4;
int number5=5;
int number6=6;
for (int i = 2; i <= 5; i++)
{//当然我知道下方代码时错误的,就是该怎么写?
number{i}=number{i-1}
}
C#变量名是变量,如何修改变量的值
例如:
int number1=1;
int number2=2;
int number3=3;
int number4=4;
int number5=5;
int number6=6;
for (int i = 2; i <= 5; i++)
{//当然我知道下方代码时错误的,就是该怎么写?
number{i}=number{i-1}
}
用反射
var fields = GetType().GetFields(BindingFlags.Instance|BindingFlags.NonPublic);
for(int i=2;i<=5;++i)
{
var field1 = fields.First(v => v.Name=="number"+(i - 1));
var field2 = fields.First(v => v.Name=="number"+i);
field2.SetValue(this,field1.GetValue(this));
}