C#中如何传入一个字符串参数作为静态变量名 根据字符串调用不同的静态变量。

比如
public void Method(String a,int b)
{
Form1.a=b;
}
有两个静态变量 一个是abc 另一个是asd 传入abc就调用Form.abc 传入asd就调用Form.asd
请问怎么样才能做到。

c#

4个回答

通过反射来获取

http://bbs.csdn.net/topics/190054900

占楼求助,楼主勿怪。谢谢!(mysql eclipse)
我在数据库建了一个成绩表,然后成绩是用的decimal(5,2)存储的
,然后我在进行sql语句更新的时候懵逼了。我用PreparedStatement对象更新。然后我那个变量是double类型的。执行就报错了,就是把double类型的给予decimal类型错误,但是数据还是更新出来了。
请问怎样才能解决这个问题(或者说不让eclipse报错,因为数据确实能更新)。
pStmt.set...(,)我找不到装换为decimal类型的。求助

qq_38584967
jianhaojiang 抱歉,错误已经解决了,decimal是可以接受double类型的。报错不是因为这个。我在更新后的重定向去的页面我忘了传值了。实在是马虎
2 年多之前 回复

public static final string FLAG1="flag1";
public static final string FLAG2="flag2";
public void Method(String flag)
{
switch(flag){
case FLAG1:
这里写传入变量是第一个静态变量的处理逻辑
break;
case FLAG2:
这里写传入变量是第二个静态变量的处理逻辑
break;
}
}

chenbaige
legendCoder 回复qq_36994673: 不行吧,但是你可以写一个方法根据flag去动态获取Form中的参数值。
2 年多之前 回复
qq_36994673
巨猪 有没有办法直接动态的把 FLAG的值接到Form.后面吗
2 年多之前 回复
chenbaige
legendCoder 回复qq_36994673: 必须要用的,case后面的FLAG值是不能改变的,如果能动态改变,那还要那么多case干嘛
2 年多之前 回复
qq_36994673
巨猪 回复legendCoder: 不用final没问题吧。。、 刚开始学还不太懂
2 年多之前 回复
chenbaige
legendCoder 回复qq_36994673: 可以的,都是动态的。但是要注意在进行判断的时候Form.flag需要有值才行。
2 年多之前 回复
qq_36994673
巨猪 不能通过传入的flag不同来直接调用Form1.flag吗 flag变的时候调用不同的变量
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
怎么把字符串作为传入,传出参数?
问题1:对于下面这种函数的第二个参数,有必要把他设成"LPTSTR *"这种2级指针么?rn可是FormatMessage函数的(LPTSTR)lpBuffer参数不知道是怎么传的,lpBuffer是LPTSTR *变量啊,为什么还转换为LPTSTR变量呢?但不转换又不好使,直接传LPTSTR类型的参数也不行,为什么啊?rnrn问题2:我想用一个传入传出参数给这个函数,FormatMessage函数要在内部分配缓存,但是如果在函数内部释放了这个缓存,是不是就达不到传出的效果了?有没有好的解决办法啊?rnrnint GetErrorDescriptionObject(DWORD dwErrCode,LPTSTR *lpBuffer)rnrn BOOL fOK = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_ALLOCATE_BUFFER,rn NULL,rn dwErrCode,rn MAKELANGID(LANG_NEUTRAL,SUBLANG_DEFAULT),rn (LPTSTR)lpBuffer,rn 0,rn NULL);rn rn if(NULL == lpBuffer)rn rn MessageBoxEx(NULL,TEXT("系统不能找到与指定数值匹配的错误号"),TEXT("错误"),MB_OK | MB_ICONERROR,NULL);rn return(RETURN_FAIL);rn rnrn return(RETURN_SUCCESS);rn
如何拆分传入字符串参数
rnrn1,1,A/1,2,B/1,3,C/1,4,Drnrn以上为传入字符串参数,每一个“/”符号代表一组,rn处理结果插入表中rnrn 类别 编号 选项rn 1 1 Arn 1 2 Brn 1 3 Crn 1 4 Drn
如何将字符串作为变量名??请教!!!!!
有一个字符串 比如“abc”rn如何将它转换为变量名?????即转换为名为abc的变量!!
【Python】如何将字符串作为变量名
一共三种方法: >>> var = "This is a string" >>> varName = 'var' >>> s= locals()[varName] >>> s 'This is a string' >>> s2=vars()[varName] >>> s2 'Thi...
如何把字符串的值作为变量名使用
如和把字符串的值作为变量名使用,对其进行赋值或者取值
c# 字符串转变量名
比如rnrnstring a="spp";rnrnstring spp="very good";rnrn如何搞 a 而得到 very goodrnrnrn在asp 里面可以这样 eval(a) 就得到 very good rnrn谢谢rnrn
请问如何把字符串作为变量名???
我想循环定义一些变量,rn像下面:rnrn$table1;rn$table2;rn$table3;rn$table4;rn但我这样定义不行:rnrnfor($i=1;$i<10;$i++)rnrn$table.$i=new tables; rn......rnrnrn请问如何实现?rnrn
c的变量名能不能当作字符串变量参数传入
一个变量名,以字符串的形式由函数参数传入,rn比如还是那个p->number,将其整体作为一个字符串rn传入。rn比如fun(char s[])rns=1235;rnrn然后在调用时用fun("p->number")rn但是不行啊
如何获得变量名的字符串
例如:rnint m_iHeight;rn int m_iWidth;rn String m_sName;rnrn要获得如下字符串rn"m_iHeight"rn "m_iWidth"rn "m_sName"
如何根据不同的网络选择不同的字符串
使用wifi时项目中的地址都选用内网地址;当使用3g时选用外网地址。rn这里字符串怎么处理。有好多地址,想在登陆时判断内外网。rn类似c里面的宏rn
字符串中如何传入表变量?
有一存储过程rnCREATE PROCEDURE sp_RP1 (@bmid int,@bjsj1 varchar(10),@bjsj2 varchar(10)) ASrnrndeclare @i int,rn @k int,rn @bm_id int,rn @ajs int,rn @ajs2 int,rn @sql varchar(255)rnrn DECLARE @tmpTB1 TABLErn (rn bm_id int,rn bjsj varchar(10),rn zfzj varchar(100)rn )rnrn DECLARE @bmTB1 TABLErn (rn bm_id int,rn ajs int,rn FlagID TINYINTrn )rnrnBEGINrnrn exec ('TRUNCATE TABLE ZFGZ_RP1')rn set @sql='insert into @tmpTB1 select bm_id,bjsj,substring(zfzj,2,100) as zfzj from ZFGZ_GZ_B1 where 1=1'    --这一段如何写?rn exec (@sql)rnrnENDrnGOrnrn为什么总是提示“必须声明变量 '@tmpTB1'。”rn如何解决?rn
请教:传入一个字符串,根据字符串在存储过程里建表,谢谢:)
我的问题:rn 我想建一个存建过程,目的:在程序中传入存储过程一个字符串参数.用这个字符串做过表名,建表.rnrn问题(1):这个存储过程怎么写呢?rnrn我很菜,写了一个:rn create proc createTablern (rn @tableName varchar(12)rn )rn asrn create table @tableNamern (rn id intrn )rn returnrnrn问题(2):这样写错在哪啦?rnrn谢谢高手指点:)
如何处理传入的sql字符串参数?
函数中处理ADODataSet.commandText属性,怎样保证传入的sql字符串参数是正确的?rnprocedure Query(DS : TDataSet; sSql : string);rnbeginrn with DS do rn beginrn if Active then close;rn commandtext := sSql;rn open;rn end;rnend;rn
请教:如何向LoadLirary传入字符串参数?
hMod=LoadLibrary("C:\windows\system\xxxx.dll");rn好象不行啊。
如何根据传入的一个字符串名创建一个以此为变量名的对象。
rtrnrnprivate void createObj(sting ss)rnrn //创建以变量名ss 命名的对象objectrn
如何根据传入的名称(字符串)调用相应方法?
如rnpulibc InvokeMothod(String ClassName, String MethodName)rnrn 调用ClassName类的MethodName方法rnrnrn谢谢!rn
C# 获取字符串对应变量名
this.GetType().GetField("portName" + i.ToString()).GetValue(this).ToString()
[C#]请问如何获得变量名的字符串,谢谢~
例如:rnint m_iHeight;rnint m_iWidth;rnString m_sName;rnrn要获得如下字符串rn"m_iHeight"rn"m_iWidth"rn"m_sName"
Mysql where in中的参数传入字符串(字符串拼接)
SET @ids=ids;     SET @sel1='select HOUR(DateTime) Time,COUNT(HOUR(DateTime)) Num from shakerecord  where TO_DAYS(NOW())-TO_DAYS(DateTime)     SET @sel2=') GROUP BY  HOUR(DateTime)';   set @sentenc
shell 将字符串作为变量名并打印
使用shell的eval实现此功能。代码如下: #!/bin/sh IP9="127.0.0.1" i=9 eval echo \$IP${i}   推荐阅读: linux命令eval的用法  shell变量详解
c#如何根据一个字符串得到控件?
例如给出"button1"就能找到此控件。
c#中如何将字符串转化为变量名
c#中如何将字符串转化为变量名?rn请附上代码,谢谢!
请问怎么将字符串值作为变量名?
各位高手,现在遇到一个小问题:如何将字符串的值作为变量的名字?例如c_str="connection_string",但是connection_string是一个变量的名字,如何使另一个变量b_str的值等于变量connection_string的值?
oracle传入一个字符串,调用webservice
oracle存储过程,传入一个字符串,将传入的字符调用webservice给服务器
java根据传入的参数实例化不同的对象
自己的写的代码中存在多个方法,类似这样。rn```rnpublic String a10100Process(String code) throws Exception rn A10100Request a10100Request = SpringUtil.getBean( "A10100Request", A10100Request.class);rn ………………………………rn return a10100Request.toString();rn rn rn public String a10101Process(String code) throws Exception rn A10101Request a10101Request = SpringUtil.getBean( "A10101Request", A10101Request.class);rn ………………………………rn return a10101Request.toString();rn rn```rnrn我如何能够做到通过传入不同的code,实例化不同的对象。rnrn![图片说明](https://img-ask.csdn.net/upload/201907/08/1562570603_918492.png)rnrn换句话说红框中的内容是否是可以使用变量存储的,我自己试过使用Class.forName的方式获取到class是不能够作为类型来定义变量的。
将字符串作为参数的函数
字符串是有一系列字符组成,以空值字符结尾。 将字符串作为参数来传递,实际上传递的是字符串的第一个字符的地址。这以为这字符串函数原型应将其表示字符串的形参申明为char *类型。 假设要将字符串作为参数传递给函数,则表示字符串的方式有三种: char 数组名; 用引号的字符串常量(字符串字面值); 被设置为字符串的地址的char指针; char ghost[15] =&amp;quot;galloping&amp;quot;;...
如何把字符串转换成一个变量名
如何把字符串转换成一个变量名 直接上代码 a = "fadsf" exec(a + " = []") print(fadsf) print(type(fadsf)) output: [] &lt;class 'list'&gt;
如何使用字符串作为函数的参数?
本人用数组总结决不了这个问题,而且当返回值也是字符串的情况如何处理?
C#中如何获取checkbox的name作为参数传入方法。
private void checkBox1_CheckedChanged(object sender, EventArgs e)n _n Harness check = new Harness();n check.IsOrNotChecked(checkBox1, 1, harness_number);n __n n n代码如上所示 ncheckBox1是checkBox控件的名字,想让它传入IsOrNotChecked方法中作为参数,参数类型是CheckBox所以不能用this.name获取。n请问该如何获取事件中的控件名称做传入用的参数。
根据动态链接库的提示,传入不同的参数,就可以调用生成SQL
根据动态链接库的提示,传入不同的参数,就可以调用生成SQL
Thymeleaf中,将字符串作为js函数的参数
字符串作为js函数的参数 在正常的js函数中,将int类型的变量直接传递给js函数的参数时候,是不需要转义的,但是将字符串类型的作为参数传递的时候,有以下几种解决的方法: 1、代码: //前台 &lt;a title="删除" th:onclick="'javascript:role_dele(this,'+${role.roleid}+')'"&gt; //管理员角色管理 @Re...
OC中switch使用字符串作为参数
实际上,object-c中switch的参数只能是int,byte,char,short的类型。那么我们如何使用字符串作为参数呢?一.字符串为数字字符串:如"1"、"2" 现将数字字符串转化为 数字类型:NSString *tempA = @"123"; NSString *tempB = @"456";1,字符串拼接 NSString *newString = [NSString stringW
VC中如何做到根据传入的字符串动态调用函数?
我知道可以用rnif(str = "func1")rn func1();rnif(str = "func2")rn func2();rn但这样的维护成本太高了.rn另外一种方法是通过map映射,不过还是得维护map表.(此方法具体如何操作,我不知道,有没有哪位大侠提供一下?)rnrn有没有什么更好的机制来完成这个功能呢?
存储过程的参数是一个字符串时,该如何传入?谢谢!
存储过程:rnrnCREATE PROCEDURE dbo.dt_Show ASrnrn--将结果先放入一个临时表rnselect * into #tt from v_Person where PersonId in ('1','2','3')rnrn--给临时表的数据编号,再放入另一个临时表#trnselect No=identity(int,1,1),* into #t from #ttrnrnselect * from #trnrndrop table #ttrnrndrop table #trnrnreturnrnGOrnrn现在的问题是我需要将上面的('1','2','3')用一个参数来代替,比如定义rn@id varchar (500),请教大家这类问题该如何解决阿?谢谢!
JSP根据参数截取字符串
大侠们好:rn 我有个菜鸟问题想问大家,就是我有一个字符串如(01,0101,010101,0102,010201,0103,010301)我如何根据","来截取里面的数字,然后放到数组里去啊.rn
怎样把一个字符串做为参数传入 DCOM 中?
我刚接触 DCOM ,想把一个字符串做为参数传入 DCOM , 然后由 DCOM 在一个对话框中显示我传入的字符串。我的程序能够正确的连接 DCOM 并调用接口,但是显示的对话框中没有传入的字符串!rnrnDCOM 的代码如下:rnrnSTDMETHODIMP CTest::Test(BSTR bb) //这是 DCOM 中的一个接口,我要调用它rnrn char *ch = (char * ) bb ;rn ::MessageBox(NULL , ch , "TestAAAAAAAAAA",IDOK);rn return S_OK;rnrnrn连接断代码如下:rn ………………rn BSTR bb;rn char ch[] = "bbb" ;rnrn bb=(BSTR)CoTaskMemAlloc(100);rn bb=(BSTR)"bbb";rn rn hr = pI->Test(bb);rnrn但是我的程序总是弹出一个空对话框,标题为"TestAAAAAAAAAA" , 却见不到字符串的内容。hr 的结果显示我的调用是成功的。rnrn我试过在连接端的程序中加入并调用如下函数,rnvoid CBbDlg::Test(BSTR bb)rnrn char * ch = (char * ) bb ;rn ::MessageBox(NULL , ch , "Test",IDOK);rn return ;rnrn这个函数能正确的显示对话框。rnrn请高手指点,我的错误在哪儿?
MySQL存储过程中如何判断传入的参数是数字还是字符串?
创建一个MySQL存储过程,传入2个参数V1和V2,在存储过程内部对该传入V2进行是数字还是字符串的判断?有知道的吗?MSSQL中用的是ISNUMERIC,在MySQL中该如何做?现在必须在存储过程内判断,有没有解决办法?
Pascal中如何把字符串当参数传入
希望能回答我rnrn就是比如rnpwrite("aaa");rnprocedure pwrite(string pstr);
传入一个字符串,输出某个字符或者字符串在传入字符串中的所有位置
输出字符或者字符串在传入字符串中的所有位置
根据传入字符串获取自定义hash值
/// &amp;lt;summary&amp;gt; /// 根据传入字符串获取自定义hash值 /// &amp;lt;/summary&amp;gt; /// &amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt; /// public static int GetHash(string str) { ...
相关热词 c#部署端口监听项目、 c#接口中的属性使用方法 c# 昨天 c#func链接匿名方法 c#怎么创建文件夹 c#从键盘接收空格 c#da/ad c#部门请假管理系统 c#服务器socket c# 默认的访问修饰符