【发布时间】:2013-01-19 13:19:29
【问题描述】:
我即将创建一个字典,其中每个值都有一个数字键,通过实验计算获得。
我知道double 和任何其他浮点类型都不太适合用作键,因为很难比较两个浮点数的唯一性或相等性。
有谁知道Decimal 在这方面是否是一个好的候选人?另一种方法是将双精度转换为具有给定精度的字符串,但这在我看来是一种不优雅的解决方法。
【问题讨论】:
-
为什么要使用十进制数作为字典中的键?它可以帮助我们为您提供最佳解决方案。
-
我的仪器返回一个输入角度列表中每个项目的列表。因此,域自然映射将是一个字典,其中每个键都是一个实数(在数学意义上)。这个数字将用于计算,但大约六位数的精度就可以了(仪器的精度要低得多)。
-
好的,但为什么要字典?字典的值是什么?
-
这些值是照片中已投影水平条纹图案的像素位置列表,每个条纹与水平面有一个角度。
-
@CédricBignon 但老实说,我认为角度不是真正的输入,而是“条纹”或“边缘”对象的属性。也许我会重新制定我的实现,但“作为字典键的数值”问题仍然有效且相关:)
标签: c# .net dictionary key decimal