加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

获取hashset C#中的value索引

发布时间:2020-12-15 04:39:42 所属栏目:Java 来源:网络整理
导读:是否可以在HashSet中检索值的索引? 我有一个hashset: HashSetint allE = mesh.GetAllNGonEdges(nGonTV); 我想检索类似于数组函数的索引值: Array.IndexOf(…) 解决方法 “索引”在HashSet中没有意义 – 它不能保证与插入顺序相同,并且随着时间的推移它可
是否可以在HashSet中检索值的索引?

我有一个hashset:

HashSet<int> allE = mesh.GetAllNGonEdges(nGonTV);

我想检索类似于数组函数的索引值:
Array.IndexOf(…)

解决方法

“索引”在HashSet中没有意义 – 它不能保证与插入顺序相同,并且随着时间的推移它可以随着添加和删除条目而变化(以非保证的方式,例如,如果你添加一个新的条目,它可以最终在中间,最后,在开始时;它可以重新排序其他所有内容…)如果您多次迭代集合而不在时间之间修改它,甚至不能保证您将看到相同的顺序,虽然我希望这没关系.

您可以使用以下内容获取当前索引:

var valueAndIndex = hashSet.Select((Value,Index) => new { Value,Index })
                           .ToList();

…但你需要非常清楚索引不是条目中固有的,并且基本上是不稳定的.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读