Concat字符串变量和整数变量

编程入门 行业动态 更新时间:2024-10-23 13:22:39
本文介绍了Concat字符串变量和整数变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我有一个带有12个groupbox的表单,每个groupbox有3个单选按钮。我使用for循环来获取选中的单选按钮并获取单选按钮的值。我声明字符串和整数变量来通过groupboxes和radiobuttons。我的问题是如何连接字符串变量和整数变量。示例代码:

Dim opt,opt1,opt2,opt3, opt4,opt5,opt6,opt7,opt8,opt9,opt10,opt11,opt12 作为 字符串 Dim grpboxcnt 作为 整数 = 1 Dim rdbtncnt As 整数 = 1 Dim xrdbtn As String For 每个 grpbx 作为 GroupBox 在 Me .Controls.OfType( of GroupBo x)() 对于 每个 rdbtn 作为 RadioButton 在 Me .Controls( GroupBox& grpboxcnt).Controls.OfType( RadioButton)() 如果 rdbtn.Checked = True 然后 如果 rdbtn。 Text = 是 然后 opt1 = 1 ' 如果选中此项我想要连接字符串(opt)和整数(rdbtncnt)示例opt& rdbtncnt = 1;但它给了我错误 ElseIf rdbtn.Text = 否 然后 opt1 = 0 ' 如果选中此项我想连接字符串(opt)和整数(rdbtncnt)示例opt& rdbtncnt = 0;但它给我错误 ElseIf rdbtn.Text = NA 然后 opt1 = 2 ' 如果选中此项我想连接字符串(opt)和整数(rdbtncnt)示例opt& rdbtncnt = 2;但它给我错误 结束 如果 结束 如果 下一步 rdbtncnt + = 1 ' 然后rdbtncnt增量新的radiobutton组将被循环 grpboxcnt + = 1 ' 然后grpboxcnt增加groupbox的新名称将循环 下一步 sqlcommand mandType = UPDATE table1 SET radio1 = @ opt1,radio2 = @ opt2,radio2 = @ opt3等... WHERE tableID = 1

提前致谢!

解决方案

Concatenation没有定义整数,不是吗? :-) 即使是字符串,也不要重复连接。这是低效的,因为字符串是不可变的。在每个连接上,创建字符串的全新实例,复制旧数据,等等。 您需要使用 string.Format 或者mutable System.Text.StringBuilder 。 随着格式,您可以使用任何类型,例如:

string result = string .Format( I我使用了几个整数值,这个:{0},这个:{1},这个:{2}和那个:{3},opt,opt1,opt2,opt3);

在一个循环中,你需要使用 StringBuilder ,但要附加/插入的数据应使用通用方法格式化为字符串 object.ToString()。 例如:

System.Text.StringBuilder sb = new System.Text。串生成器(); sb.Append( some text); sb.Append(someInteger.ToString()); sb.Append(someDateTime.ToString( yyyy / mm / dd hh:mm )); sb.Append(anyObjectAtAll.ToString()); // ... string result = sb.ToString();

-SA

I have a form with 12 groupbox and each of that groupbox there is 3 radio buttons. I use for loop to get what radio button is checked and get the value of radio button. I declare string and integer variables to go through groupboxes and radiobuttons. My problem is how to concat string variable and integer variable. sample code :

Dim opt, opt1, opt2, opt3, opt4, opt5, opt6, opt7, opt8, opt9, opt10, opt11, opt12 As String Dim grpboxcnt As Integer = 1 Dim rdbtncnt As Integer = 1 Dim xrdbtn As String For Each grpbx As GroupBox In Me.Controls.OfType(Of GroupBox)() For Each rdbtn As RadioButton In Me.Controls("GroupBox" & grpboxcnt).Controls.OfType(Of RadioButton)() If rdbtn.Checked = True Then If rdbtn.Text = "Yes" Then opt1 = 1 'if this is checked i want to concat the string(opt) and integer(rdbtncnt) example opt & rdbtncnt = 1 ;but it gives me error ElseIf rdbtn.Text = "No" Then opt1 = 0 'if this is checked i want to concat the string(opt) and integer(rdbtncnt) example opt & rdbtncnt = 0 ;but it gives me error ElseIf rdbtn.Text = "NA" Then opt1 = 2 'if this is checked i want to concat the string(opt) and integer(rdbtncnt) example opt & rdbtncnt = 2 ;but it gives me error End If End If Next rdbtncnt += 1 'then rdbtncnt increment new set of radiobuttons will be looped grpboxcnt += 1 'then grpboxcnt increment new name of groupbox will be looped Next sqlcommandmandType = "UPDATE table1 SET radio1 = @opt1, radio2 = @opt2 , radio2 = @opt3 , etc... WHERE tableID = 1"

Thanks in advance!

解决方案

"Concatenation" is not defined on integer, isn't it? :-) And don't concatenate repetitively even the string. This is inefficient, because strings are immutable. On each concatenation, the brand new instance of the string is created, old data is copied, and so on. You need to use either string.Format or mutable System.Text.StringBuilder. With Format, you can work with any types, for example:

string result = string.Format("I'm using several integer values, this: {0}, this: {1}, this: {2} and that: {3}", opt, opt1, opt2, opt3);

In a cycle, you would need to use StringBuilder, but the data to be appended/inserted should be formatted to string using the universal method object.ToString(). [EDIT] For example:

System.Text.StringBuilder sb = new System.Text.StringBuilder(); sb.Append("some text"); sb.Append(someInteger.ToString()); sb.Append(someDateTime.ToString("yyyy/mm/dd hh:mm")); sb.Append(anyObjectAtAll.ToString()); //... string result = sb.ToString();

—SA

更多推荐

Concat字符串变量和整数变量

本文发布于:2023-10-27 03:24:26,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1532174.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:变量   整数   字符串   Concat

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!