Operators.hash<'T> 函数 (F#)

泛型哈希算法,用于根据 = 运算符返回相等项的相等哈希值。 默认情况下,它将对 F# 联合、记录和元组类型使用结构哈希处理,对类型的全部内容进行哈希处理。 可通过为每个类型实现 GetHashCode,按类型对函数的确切行为进行调整。

命名空间/模块路径:Microsoft.FSharp.Core.Operators

程序集:FSharp.Core(在 FSharp.Core.dll 中)

// Signature:
hash : 'T -> int (requires equality)

// Usage:
hash obj

参数

  • obj
    类型:'T

    输入对象。

返回值

计算所得的哈希。

备注

此函数在编译的程序集中名为 Hash。 如果从 F# 以外的语言中访问函数,或通过反射访问成员,请使用此名称。

示例

以下示例显示使用哈希函数生成的各种数据类型的哈希。

let show a = printfn "hash(%A) : %d" a (hash a) 
show 1;
show 2;
show "1"
show "2"
show "abb" 
show "aBc" // case-sensitive
show None;
show (Some 1);
show (Some 0);
show [1;2;3];
show [1;2;3;4;5;6;7;8];
show [1;2;3;4;5;6;7;8;9;10;11];
show [1;2;3;4;5;6;7;8;9;10;11;12;13;14;15]
  

平台

Windows 7、Windows Vista SP2、Windows XP SP3、Windows XP x64 SP2、Windows Server 2008 R2、Windows Server 2008 SP2、Windows Server 2003 SP2

版本信息

F# 运行时

受以下版本支持:2.0、4.0

Silverlight

受以下版本支持:3

请参见

参考

Core.Operators 模块 (F#)

Microsoft.FSharp.Core 命名空间 (F#)