tips(java always to be continue...)
- auto-boxing and cache problem http://blog.csdn.net/xad707348125/article/details/47017633
自动装箱时调用valueof使一定范围int值在cache中,而若要修改真实值需要reflect里的set,必须要获得access权限。
IntegerCache的low和high
Integer i1 = Integer.valueOf(1)
setIntValue(intvalue) 但是 private final int value;
AccessibleObject.setAccessible(boolean flag) 之后再setInt
Field f = Integer.class.getDeclaredField("value") f.setAccessible(true); int tmp = integer1.intValue() f.setInt(integer1,integer2.intValue()); f.setInt(integer2,tmp)
由于装箱的cache问题导致。
- why "string" special? https://www.zhihu.com/question/31345592
安全。hashcode 的collision问题
From satrys,
Kristen wang
浙公网安备 33010602011771号