如何将随机文本转换为整数

How to convert random text into an integer

我有不同的矩形对象,每个对象都有一个通过 Guid 生成的唯一 ID。

示例 ID:"fdd4551f-0087-48ee-b764-3713b5107ac9"

我想将该字符串转换为 0 到 256 之间的整数,这样我就可以根据对象的 ID 为每个对象分配随机颜色。

预期结果示例:

对于

"fdd4551f-0087-48ee-b764-3713b5107ac9" = 186

"48d32306-2861-4e78-b57e-9a02ce92f8ed"  = 35 

我真的不在乎数字是什么,除了我总是用相同的随机字符串得到相同的结果。

鉴于要求比较宽松,可以这样写:

static int GetNumberForString(string guid, int limit)
{
    return Math.Abs(guid.GetHashCode()) % limit;
}