问题标签 [numeric-conversion]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
silverlight - Silverlight XAML 绑定——十进制到双精度
我在 DataGridView 中有一些列,它们的 Binding 属性设置为如下所示:
问题是这个 NetPrice 字段是 Decimal 类型,我想在 DataGrid 中将它转换为 Double。
有没有办法做到这一点?
sql - SQL Server CONVERT(NUMERIC(18,0), '') 失败但 CONVERT(INT, '') 成功?
PRINT CONVERT(NUMERIC(18,0), '')
生产 Error converting data type varchar to numeric.
然而,
PRINT CONVERT(INT, '')
产生 0
没有错误...
问题:是否有一些 SQL Server 标志,或者我需要为每个 varchar 到数字转换做 case 语句?(除了显而易见的原因?)
java - 可以仅使用位运算符将无符号整数的 4 个小端序字节分配给 Java 原语吗?
我想读取 4 个字节,它们是无符号 32 位整数的小端编码,并将值分配给 Java int
(是的,实际上我会使用“long”,但在这种情况下,我“知道”无符号值永远不会大到它会溢出二进制补码表示法中的有符号 int,并且它适合我的插图使用 int )。
有问题的 4 个字节编码值 '216' little-endian 样式:
基本上我只需要将以下位模式填充到 Java int 中:
下面的简单代码应该可以做到......并且对于前三个 '0x00' 字节它成功:
但是,它搞砸了:
...因为 b1 的位是 1101 1000,它是二进制补码表示法中的负数 (-40),因为最高有效位是 1。当 Java 在评估按位或运算符之前将 b1 扩展为 int | , -40 被编码为 0xFFFFFFD8,这颠覆了我们天真的假设,即加宽的 int 的前 3 个字节将为 0。
所以我的策略搁浅了。但是我应该怎么做呢?甚至可以使用原始运算符解决这个问题(请给出解决方案),还是我们必须求助于类库?(在我的正常编码中,我不会直接使用位和字节,所以我缺乏看起来应该是“日常”代码的习语)。
至于类库方法,以下片段得到了正确的结果:
...这对可读性很好,但使用了 8 个我宁愿放弃的方法调用。
谢谢!大卫。
c++ - C ++如何为浮点数设置固定的小数精度
我有一个返回双精度的 API 调用。双精度的小数长度可以从许多小数位变化到几个小数位(这都归结为执行器的状态)。这个双精度表示执行器范围半径上的当前位置。我对这么详细的数字不感兴趣,因为它给系统增加了很多噪音。我一直在使用浮点数来节省空间,但我仍然有 6-8 个十进制长度的浮点数。我对地板或天花板不感兴趣,只是因为它不能完成我想要的工作。例如,我有数字:
无论如何,我都希望将精度设置为小数点后 2 位。我不是在谈论 std::cout 上的输出精度,我知道如何设置它。我说的是浮动的实际精度。即:我对具有 0.XX 格式和 0.XX00000000000 实际精度的浮点数感兴趣。因此将上面的列表转换为:
我知道 boost 有一个数值转换模板,但我不知道如何使用较低的精度从浮点数转换为浮点数。有人可以帮忙吗?
c# - Casting 和 Convert.ToInt32() 在 C# 中的行为不同?
这是一段简单的 C# 代码:
为什么(int)
与 相比,铸造结果会有所不同Convert.ToInt32()
?
两者不应该带来相同的结果吗?
vb.net - 将阿拉伯数字转换为英文
我正在寻找一种将阿拉伯数字字符串“٠١٢٣٤٥٦٧٨٩”转换为英文数字字符串“0123456789”的方法
c# - 将(长尾数)和(sbyte 指数)转换为十进制
upd将我的版本放在最后的描述中
我需要将尾数和指数转换为十进制。这就是我编码的方式:
field.Decimal.Mantissa
是整数,但是Math.Pow(10, field.Decimal.Exponent)
是双精度的,所以我担心在转换为十进制时会丢失精度。
我应该为将产生的类型编写自己的Pow
函数吗?integer
decimal
你有什么建议?我关心性能,因为我每秒调用这个函数几十万次!非常需要如此丑陋但快速的解决方案!
我关心的是精度,因为我在这里用钱工作。
这是我刚刚编码的,但可能有人可以提出更好的建议:
bash - 如何在 Bash 中测试一个字符串是否比另一个字符串“更大”?
在 Bash 中,我可以编写以下测试
这导致返回 0,即 true。bash 实际上是如何执行这个字符串比较的?据我了解>
,进行整数比较。它是否尝试比较操作数的 ASCII 值?
scheme - 如何在方案中将数字分解为整数和小数部分?
我想要一个函数number->second-pair
,它接受一个数字并返回一对整数,表示其整数部分和小数部分乘以 1000000。
IE:
您可能很容易找到解决方案,但我搜索了许多文档,遗憾的是找不到将数字转换为整数的方法。有人可以帮我吗?
顺便提一句:
实际上我想要一个更精确的alarm
(这个)通过使用setitimer
,所以我想要精确的整数作为参数传递。
c# - .NET DataTable 中的双重存储?
.NET 看起来它正在以错误的格式格式化 DataRow 中的双精度,所以我无法立即加载它。如果我存储“0.000000001”,.NET 将其存储为“1E-09.0”,而它应该是“1E-09”。所以 Convert.ToDouble("1E-09.0") 返回一个 FormatException。这是我使用的代码:
我也尝试过演员,但代码抛出了“InvalidCastException”。Double.Parse 也不能正常工作。
解决方案: