C#学习教程:C#中的动态变量?分享


C#中的动态变量?

是否可以在C#中使用动态变量(不确定命名)?

在PHP中,我可以做到

$var_1 = "2"; $var_2 = "this is variable 2"; $test = ${"var_".$var_1}; echo $test; output: this is variable 2; 

我们可以用C#做​​到这一点吗?

在C#中,您使用词典将值与字符串相关联。

不,基本上。 编译器不保证方法变量(以其书面forms)或名称存在…

如果它们是字段(实例或静态),那么您可以使用reflection来获取值; 但不是方法变量。 你想要什么,或许用字典代替?

 var vars = new Dictionary(); vars["var_1"] = "2"; vars["var_2"] = "this is variable 2"; Console.WriteLine(vars["var_" + vars["var_1"]]); 

不确定这是否适用于局部变量(并且很可能它不会因为它们被存储为索引),但您可以通过reflection访问类属性。

如果var是类字段,则可以使用类Type的静态GetField方法来获取字段信息,例如其当前值。

你不是在寻找简单的数组吗?

 string[] myArray = new string[2]; myArray[0] = "2"; myArray[1] = "this is variable 2" 

Otherwhise字典是要走的路。

上述就是C#学习教程:C#中的动态变量?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—猴子技术宅(www.ssfiction.com)

本文来自网络收集,不代表猴子技术宅立场,如涉及侵权请点击右边联系管理员删除。

如若转载,请注明出处:https://www.ssfiction.com/ckf/1031960.html

发表评论

邮箱地址不会被公开。 必填项已用*标注