当前位置 : 主页 > 编程语言 > c语言 >

vb.net – 无法将字符串转换为’Double’类型

来源:互联网 收集:自由互联 发布时间:2021-06-24
我开始编写代码并学习VB.NET.到目前为止,它一帆风顺. 直到我尝试运行该程序. 我所做的是用我熟悉和理解的语言写了一个刽子手游戏.在C#中,代码完美无缺.一旦我完成了这个完成点,我可
我开始编写代码并学习VB.NET.到目前为止,它一帆风顺.

直到我尝试运行该程序.

我所做的是用我熟悉和理解的语言写了一个刽子手游戏.在C#中,代码完美无缺.一旦我完成了这个完成点,我可以说没有其他任何我希望改变它,我开始手动转换为VB.NET.

到目前为止,没问题.但我刚刚完成转换,现在我遇到了障碍.

在窗口的底部是一个状态栏,告诉你你在哪个拼图集以及你正在使用哪个拼图.选择拼图时,这行代码会引发错误:

stsPuzzles.Text = "Puzzle: " + regionPuzzles + "/" + maxPuzzles

错误是:

Conversion from string "Puzzle" to type 'Double' is not valid.

当然,简单的答案是将这个机制拿出来,但至少为了测试目的,我想在那里,所以我可以确保正确的谜题在正确的集合.

有没有办法解决这个问题,所以我的两个整数变量可以在字符串中?或者有一个解决方法,我至少可以使用足够长的时间来测试其余的测试过程吗?

我希望找到一种解决方法,因为还有其他地方,比如显示统计数据,需要能够做到这一点.

对现有代码的直接修复是这样的:

stsPuzzles.Text = "Puzzle: " + CStr(regionPuzzles) + "/" + CStr(maxPuzzles)

或这个:

stsPuzzles.Text = "Puzzle: " & regionPuzzles & "/" & maxPuzzles

在VB.Net中,&而不是连接运算符.通常仍然可以工作,但当操作数是数字时,它也倾向于认为你想要算术.

但在这种情况下我真正要做的是:

stsPuzzles.Text = String.Format("Puzzle: {0}/{1}", regionPuzzles, maxPuzzles)

或使用Visual Studio 2015或更高版本:

stsPuzzles.Text = $"Puzzle: {regionPuzzles}/{maxPuzzles}"
网友评论