gethashcode

    2热度

    1回答

    我有下面的类 public class ResourceInfo { public string Id { get; set; } public string Url { get; set; } } 其中包含的一些资源信息。 现在,我需要检查,如果两个这样的资源是由以下情形相等(I`ve实现IEquatable接口) public class ResourceInfo

    0热度

    1回答

    今天我想用C#测试我的关键程序。在这个程序中,一些属性将通过GetHashCode()方法进行散列。 执行部分程序后,添加了单元测试项目。 然后我在调试模式下运行该程序,并将散列数据复制到记事本以用于单元测试项目的比较。 之后,在调试模式下运行测试方法,并再次获得散列数据并将其复制到记事本。 在这种情况下,我看到在调试模式和单元测试模式下,唯一字符串的散列码与不同。 我不知道它在哪里引发,以及如何

    3热度

    1回答

    我得到了从this post和this一个子字符串struct的想法。第二篇文章是.net的String.GetHashCode()的实现。 (我不确定哪个版本的.net来自于此。) 这是实现。 (GetHashCode的从上面列出的第二源获得。) public struct Substring { private string String; private int Off

    3热度

    1回答

    我的程序创建自定义对象,我想获得一个清晰的列表。所以我想使用一个集合并按对象添加对象。该集会防止重复。最后我有一组独特的对象。 我通常会使用HashSet,因为我不需要一个有序集合。只有很多不同的潜在对象。超过2^32。 GetHashCode函数返回一个int,所以这不能作为我的对象的唯一键。 我假设我不能使用HashSet因此必须使用较慢的SortedSet并让我的对象实现IComparabl

    -1热度

    1回答

    我发现Vector3D类有些奇怪的行为。给定具有重新排列的X/Y/Z值(例如[0,0,1],[0,1,0]或[3,1,4],[1,3,4])的两个Vector3Ds,给出两个Vector3Ds,调用GetHashCode结果的值相同。如果通过.Equals或==检查向量是否相等,如预期的那样,您会看到两个向量实际上并不相等。 如果它们不相等,为什么它们会有相同的哈希码? var a = new S

    0热度

    2回答

    GetHashCode()返回一个int32作为散列。 我想知道如果它的元素数量超过int.MaxValue,它将如何工作,因为它们都会返回一些整数<= int.MaxValue?

    1热度

    2回答

    在只包含字符串属性的类上重载相等运算符的最佳(最优雅或表现)方式是什么? 例子: class MagicClass { public string FirstAttribute { get; set; } public string SecondAttribute { get; set; } public string ThirdAttribute { get; s

    0热度

    1回答

    我有一个问题,在并发字典中使用自制的IEqualityComparer和GetHashCode。 ConcurrentDictionary<TwoUintsKeyInfo,Int64> hashCodePlusIandJDict = new ConcurrentDictionary<TwoUintsKeyInfo, Int64>(); : 下面的类(使用提供的两个特性简化),当我实现它这样完美

    -1热度

    2回答

    我期待创建一个自定义string.GetHashCode()方法在程序命名空间中使用(在string.GetHashCode()MSDN here页面上推荐使用),字符串的一些 不幸的是,string class是继承密封。 我得到的最接近的是一个基类带有字符串类型值访问,但是这将是一个有点恼人,该代码将改为: CustomStringTypeInstnce.Value.GetHashCode()

    -1热度

    1回答

    在64位.NET 4.5平台上,是否有计算字符串的GetHashCode()方法在32位上的结果.NET 4.5平台? 这显然不是一个好主意。这已被询问并解释here和here。只有一个答案说如何做到这一点将被接受。