public static void swap(Integer i1, Integer i2) {
try {
Field field = Integer.class.getDeclaredField("value");
field.setAccessible(true);
Integer tmp = new Integer(i1.intValue());
field.set(i1, i2.intValue());
field.set(i2, tmp);
} catch (NoSuchFieldException e) {
e.printStackTrace();
} catch (SecurityException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
Integer i1 = 1;
Integer i2 = 2;
swap(i1, i2);
System.out.println(i1);
System.out.println(i2);
}
Integer 引用传递交换值
最新推荐文章于 2023-02-14 20:35:29 发布