在 Java 中创建哈希

问题描述

我遇到了这段代码,它使用 .toCharArray() 创建一个字符串的哈希码,稍后将用于在 HashMap 中存储数据。

    public static int generateHashCode(String s) {
    int code = 0;
    
    for(char next_character: s.toCharArray()) {
        code += next_character;
    }
    
    return code;
}

我从这段代码中了解到,它使用增强的 for 循环遍历字符串(Made 数组)的每个字符。我不明白的是它如何将这些“字符”添加到“整数”代码中。我将代码更改为只打印 next_character 并打印字符串的所有单个字符。

解决方法

这里发生的是 char 被提升为 int,它的值将等于 ASCII 值。

https://en.m.wikipedia.org/wiki/ASCII

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...