Fel*_*lix 3 java integer overloading wrapper
我试图确定是否可以修改Java使用的拆箱方法.这样做的目的是能够做到:
class IInteger extends Integer {
@Override
public int unboxToPrimitive(){
return ++val;
}
}
IInteger i = 10;
System.out.print(i); // 11
Run Code Online (Sandbox Code Playgroud)
也就是说,重载方法并让它返回++ val而不是val.
不可以.这是不可能的,首先Integer是final也不能分类.其次,你不能在Java中重载运算符.接下来,您无法为自定义类型进行自动装箱.最后,您实际上并未使用拆箱println(您可以调用print引用类型).
但是,如果我理解你真正想要的东西,你可以使用AtomicInteger和incrementAndGet()(代替get()并根据需要改变你的其他方法).
| 归档时间: |
|
| 查看次数: |
93 次 |
| 最近记录: |