相关疑难解决方法(0)

Java数组,查找重复项

我有一个数组,我正在寻找重复.

duplicates = false;
for(j = 0; j < zipcodeList.length; j++){
    for(k = 0; k < zipcodeList.length; k++){
        if (zipcodeList[k] == zipcodeList[j]){
            duplicates = true;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,当没有重复时,此代码不起作用.为什么?

java arrays

59
推荐指数
4
解决办法
21万
查看次数

是否真的缓存了java.lang.String的哈希码?

String s1 = "String1";      
System.out.println(s1.hashCode()); // return an integer i1 


Field field = String.class.getDeclaredField("value");  
field.setAccessible(true);  
char[] value = (char[])field.get(s1);  
value[0] = 'J';  
value[1] = 'a';  
value[2] = 'v';  
value[3] = 'a';  
value[4] = '1'; 
System.out.println(s1.hashCode()); // return same value of integer i1 
Run Code Online (Sandbox Code Playgroud)

即使我在反射的帮助下更改了字符,也会保留相同的哈希码值.

这里有什么我需要知道的吗?

java string caching immutability

7
推荐指数
1
解决办法
510
查看次数

标签 统计

java ×2

arrays ×1

caching ×1

immutability ×1

string ×1