我试图找到一种方法来将像“t2hr8var4tnuloglmibpabyvdri1y02rbx”这样的长字符串ID转换为数字ID。
A=10,B=20,C=50,
ABC=10+20+50=80
BAC=20+10+50=80
所以ABC=102050
这个方法不起作用,因为有一个20个字母的字符串会导致一个巨大的数字,所以我如何解决这个问题?提前谢谢你。
可以使用hashcode()
函数。“id”.hashcode()
。所有对象都实现此函数的一个方差。
从文档中:
打开有趣的hashCode():int
返回对象的哈希代码值。hashcode
的一般约定是:
只要在同一对象上多次调用hashcode
方法,则equals
方法必须一致地返回相同的整数,前提是不修改对该对象进行的equals
比较中使用的信息。
如果根据equals()
方法,两个对象相等,那么对这两个对象中的每一个调用hashcode
方法必须产生相同的整数结果。
默认情况下,所有平台对象都实现它。如果您有很多ID,总是有可能重复。
如果使用基于JVM的kotlin环境,那么散列将由JVM的string.hashcode()
函数产生。
所以我是计算机科学的新手,我们被要求做的一件事是尝试创建一个程序,首先将用户输入的一个单词转换成一个数字串,a=1,b=2,z=26等等,还有一些其他的事情,因为它们是扩展,我现在不想讨论。诚然,她说她不介意我们完成它,因为这是我们今天的第一节java课程。 有鉴于此,有人能给我一些关于如何做到这一点的建议吗?我不想让一段完整的代码完全做到这一点,因为我需要学习,因此非常感谢指导之手。到目前为止,
我正在使用Schembuf在带有套接字的计算机之间更改数据。要传输数据,我使用以下内容: 然而,我注意到Protobuf无法读取任何非int类型的接收数据(它将其分配给0)。果不其然,如果我不使用套接字,但试图用相同的代码片段返回消息,则会发生相同的情况: 我还指出: 那么,为什么我不能正确地将数据转换回字符串呢?如果这是一个参考问题,为什么protobuf不能读取字符数组数据或从字符数组转换的字
我有一个,我希望将其转换为。在Java8之前,我会通过循环,将每个转换为并将其添加到新的,如下所示。
问题内容: 如何将经典字符串转换为f字符串? 输出: 所需的输出: 问题答案: f字符串是 语法 ,而不是对象类型。您不能将任意字符串转换为该语法,该语法会创建一个字符串对象,而不是相反。 我假设您想用作模板,因此只需在对象上使用方法: 如果要提供可配置的模板服务,请创建一个包含所有可以插值的字段的名称空间字典,并与调用语法一起使用以应用名称空间: 然后,用户可以在字段中的名称空间中使用任何键(或
问题内容: 我想在GO中将字符串数组转换为字节数组,以便可以将其写到磁盘上。将字符串数组()解码为字节数组()的最佳解决方案是什么? 我正在考虑对字符串数组进行两次迭代,第一个迭代以获得字节数组所需的实际大小,然后第二个迭代写入每个元素的长度和实际字符串()。 解决方案必须能够以其他方式进行转换;从一个到一个。 问题答案: 让我们忽略一个事实,那就是走一秒钟。您需要做的第一件事是将序列化格式编组为
问题内容: 我有一个带转义Unicode字符的字符串,我想将其转换为常规Unicode字母。例如: 应该成为 我知道当我打印第一个字符串时它已经显示了。我的问题是我从文件中读取文件名,然后搜索它们。文件中的文件名使用Unicode编码进行转义,当我搜索文件时,我找不到它们,因为它搜索名称中带有名字的文件。 问题答案: 从技术上讲: 自动将其转换为,因此我假设你正在从某个文件中读取字符串。为了将其转