我有一个"获取字符串的哈希String.hashValue"代码,我在下面添加了它.此代码在Xcode 9.4.1中运行良好.
工作得很好意味着每当我关闭应用程序并重新打开它时,结果hashValue都是相同的(唯一的)
private func cacheName(of url: String) -> String {
// The url is url of a png image, for example www.imageurl.com/image.png
return "\(url.hashValue)"
}
Run Code Online (Sandbox Code Playgroud)
当我在Xcode 10中构建我的项目时,每次重新启动应用程序时结果都会更改(再次关闭并打开应用程序).iOS,设备,Swift版本相同.所以我认为问题是Xcode 10已经改变了一些影响hashValue(可能在构建应用程序时配置??)
如果我使用String.hash而不是,它运作良好.但在之前的版本中,我保存了hashValue结果,因此我不想更改它.
我怎样才能String.hashValue在每次都保持独特的结果.或任何建议将不胜感激