我目前正在研究一种实验装置,用于使用飞秒激光将复杂的微结构写入玻璃。
激光器的输出功率由我从(C#控制台)应用程序控制的滤光轮调节。由于我最初不知道车轮的位置,我需要在启动时将其初始化,方法是测量车轮上预定数量的点的功率。
此信息(功率值及其在车轮上的相应位置)应在运行期间存储。因此,基本上如果请求某个输出功率,控制器将查找可以找到所需值的两个点,然后递增位置直到达到它。
这是我通常使用数据库实现的。由于初始化发生在每次启动时并且不需要持久化,我可能更愿意将其保留为内存列表。
所以我的问题是:
是否有可能以某种方式“索引”功率值以快速检索它们?
答案 0 :(得分:3)
Dictionary<int, int>
可能是您最好的选择。当然,如果不是int
s,您可以切换键/值类型以匹配您的数据。
答案 1 :(得分:2)
如果您需要计算密钥的“中间”值,则可以查看使用SortedDictionary<int, int>
。
请查看similar question here,了解使用SortedDictionary
答案 2 :(得分:1)
前段时间我在dotnet的不同列表类型上写了一篇有利有弊的小帖子 http://www.selfelected.com/list-of-list-and-collection-classes-in-dotnet-11-45/
答案 3 :(得分:0)
如果您想将每个键映射到一个值,请使用Dictionary<key,value>