java 反射实现2个int变量值的交换

Integer a = 1000;

Integer b = 2000;

swap(a, b);  //实现该函数,使得a,b的值交换

System.out.println(a + "-" + b + "-" + a.getClass());

static void swap(Integer a, Integer b) {
 int temp = a;

try {
Class clazz = a.getClass();
Field value = clazz.getDeclaredField("value");
value.setAccessible(true);
value.setInt(a, b);
value.setInt(b, temp);
} catch (Exception ex) {
ex.printStackTrace();
}


}

 http://www.blogjava.net/sundc/archive/2013/06/08/400382.html

From:https://www.cnblogs.com/xuejianxiyang/p/9155397.html

猜你喜欢

转载自www.cnblogs.com/xuejianxiyang/p/9155397.html