C#如何动态的改变变量名

mengzhengjie 2012-05-26 08:39:10
就是比如:有7个变量:num1,num2,num3,num4,num5,num6,num7 我现在想获取他们的值 然后我定义了:int i=0; string num[i] zhi.text=num[i] 这样就可以通过改变i的值来改变“num[i]”的值的 我现在就是不知道怎样去定义像num[i]这样的变量的
有什么办法可以实现这样的一种效果不:谢谢
...全文
1823 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
花痴 2012-05-26
  • 打赏
  • 举报
回复
这样是不行的喔,如果要动态找类的字段的值的话,可以用反射,可以通过字段名取值。
mathieuxiao 2012-05-26
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

楼主问题描述不够清楚

动态改变变变量(对象)名C#里没这样机制。不仅C#没,就我所知C++和java也没有。
[/Quote]
+1

如果你要创建多个变量,而又觉得麻烦的时候,你就应该创建一个数组或是集合来处理,动态变量名的做法我是没有听说过的。
lixingkai0 2012-05-26
  • 打赏
  • 举报
回复
public string[] num = new num[50];
qingchunhuoli 2012-05-26
  • 打赏
  • 举报
回复
int []num= new int[7]{1,2,3,4,5,6,7};
var nu=from n in num select n;
foreach(var item in nu){
zhi.Text=item;

}
大狗狗 2012-05-26
  • 打赏
  • 举报
回复
楼主问题描述不够清楚

动态改变变变量(对象)名C#里没这样机制。不仅C#没,就我所知C++和java也没有。
王晓彤 2012-05-26
  • 打赏
  • 举报
回复
数组,for循环
ayu_xb 2012-05-26
  • 打赏
  • 举报
回复
希望这个对你有参考作用


C#里面中将字符串转为变量名

例如

string str = "spp";

string spp = "very good";

怎样搞 str 而得到 very good 这个值?



你好,
public partial class Form1 : Form
{
string str = "spp";
public string spp = "very good";

public Form1()
{
InitializeComponent();

MessageBox.Show(this.GetType().GetField(str).GetValue(this).ToString());
}
}
tiangong789 2012-05-26
  • 打赏
  • 举报
回复
没有可以改变变量名 你可以引用或者通过指针定位同一个变量的值。。但是你说那种 我没听说过 ,应该没有这个说法
毛员外 2012-05-26
  • 打赏
  • 举报
回复
Dictionary<string, object> dicVar = new Dictionary<string, object>();
object num1 = 5;
dicVar.Add("num1", num1);
object obj = dicVar["num" + 1];
Console.WriteLine(obj);
Console.Read();
感觉很怪,但客户的需求必须满足嘛
下面这个是反射的,我也是刚刚学会,话说世间两大神:百度,谷歌
namespace csdn测试
{
class Program
{
public int num1 = 1;
public int num2 = 2;
public int num3 = 3;
static void Main(string[] args)
{
Assembly assembly = System.Reflection.Assembly.GetExecutingAssembly();
Type type = assembly.GetType("csdn测试.Program");
object obj = Activator.CreateInstance(type, true);

FieldInfo classField = type.GetField("num"+1);
Console.WriteLine("num"+1+":" + classField.GetValue(obj).ToString());
Console.Read();
}
}
}

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧