【问题标题】:Visual Basic LESS THAN Issue?Visual Basic 少于问题?
【发布时间】:2015-02-13 12:47:08
【问题描述】:

我正在尝试使用小数

If "3.04" < "12.4" Then
    finalPrice = "perfect"
Else
    finalPrice = "too big"

End If

所以 3.04 不大于 12.4 对吧?当我运行它时,它认为 3.04 大于 12.4。为什么这样做?它应该返回perfect,而不是返回too big,这是它当前正在执行的操作。

是小数问题吗?

【问题讨论】:

  • 使用这种方法,看看"1" + "2" 的结果

标签: vb.net visual-studio if-statement operators


【解决方案1】:

您不能以这种方式比较字符串(就是这样,用引号括起来)。由于这是一个字符串比较,按字典顺序,“3”(最左边的字符)高于“1”。尝试将数字解析为浮点数,然后您的比较将起作用。

另外,请记住,安全解析!如果解析失败,请准备围绕它进行一些防御性编码。如果有的话,尽可能避免以字符串形式输入这个浮点数。

【讨论】:

  • 非常感谢,这么简单的事情。不用担心,其中使用的字符串不是来自用户。
猜你喜欢
  • 2011-06-03
  • 1970-01-01
  • 2011-02-25
  • 1970-01-01
  • 1970-01-01
  • 2014-02-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多