c# - 重命名单个变量并使用 For 循环 C# 从列表中为它们分配值
问题描述
我有一个项目列表(Tlist),我想将它们连续分配给单个变量(T0-T4),这些变量也可以连续命名。
List<int?> Tlist = new List<int?>();
Tlist.Add(1);
Tlist.Add(4);
Tlist.Add(3);
Tlist.Add(1);
Tlist.Add(5);
int? T0 = null;
int? T1 = null;
int? T2 = null;
int? T3 = null;
int? T4 = null;
所以我可以这样做:
int g = 0;
T0 = Tlist[g++];
T1 = Tlist[g++];
T2 = Tlist[g++];
T3 = Tlist[g++];
T4 = Tlist[g++];
但是,如何在 Forloop 中重命名变量 T0-T4 以提供相同的输出,而无需重写每个变量?我想要类似的东西:
int g = 0;
for (int i = 0; i < Tlist.Count; i++)
{
Tg++ = Tlist[g++];
}
所以输出是:
T0 = 1
T1 = 4
T2 = 3
T3 = 1
T4 = 5
谢谢你的帮助!
解决方案
如果您将TX
s 设置为属性,则反射是一种方法
typeof(myClass).GetProperty("T" + i).SetValue(myClassInstance, i);
https://dotnetfiddle.net/qEoaok
如果这个问题不是关于技术可能性并且您想在您的应用程序中使用它,您最好找到一种不同的方法。
推荐阅读
- python - Django 不发送带有附加 zip 文件的电子邮件
- javascript - 如何将函数内数组的值推送到空的全局数组
- css - scss - 设置父级似乎不起作用
- javascript - 我想选择一个没有父元素的子元素选择
- sql - 如何在SQL中从一个表中选择所有内容并从另一个表中选择一行
- r - R:将组中的所有字符串组合成一行
- python - 如何使这个循环重复直到添加了正确的值,Python
- python - 如何防止在python中输入十多个数字以及字母和符号
- .net - Net5 通配符包引用在锁定模式下导致“NU1004:包锁定文件不一致”错误
- jhipster - Jhipster 注册表无法在 localhost 上运行