表示一个 128 位哈希值。
使用 Hash128
来唯一标识一段数据。128 位哈希值发生哈希冲突的概率极低,因此您可以假设如果两段数据的哈希值相同,则数据也相同。例如,要快速确定纹理像素内容是否已更改,或者它们在多个纹理之间是否相同,可以使用 Texture.imageContentsHash。
要计算某些数据的哈希值,请使用 Hash128.Compute 函数。要为多段数据增量计算哈希值,请使用 Hash128.Append。
using UnityEngine;
public class ExampleScript : MonoBehaviour { void Start() { var hash = new Hash128(); hash.Append(42); hash.Append(13.0f); hash.Append("Hello"); hash.Append(new int[] {1, 2, 3, 4, 5}); // prints "2d6e582c3fcfb4b8f3c16650a75dc37b" Debug.Log(hash.ToString()); } }
用于计算 Hash128
值的哈希算法是 SpookyHash V2。请注意,虽然此哈希算法计算速度很快并且具有良好的哈希分布特性,但它不是加密哈希函数。
isValid | 如果哈希值有效则返回 true。(只读) |
Hash128 | 使用 128 位值直接初始化 Hash128。 |