62,614
社区成员
发帖
与我相关
我的任务
分享
public class SwapTest {
/**
* @param args
*/
public static void main(String[] args) {
int a = 3, b = 4;
swap(a,b);
System.out.println(a+","+b);
Integer a1 = new Integer(3);
Integer b1 = new Integer(4);
swap(a1,b1);
System.out.println(a1+","+b1);
}
// 交换a和b的值
public static void swap(int a, int b){
}
// 交换a和b的值
public static void swap(Integer a, Integer b){
}
}
public static void swap(Integer a, Integer b){
Class clazz = Integer.class;
try {
int temp = a.intValue();
Field field = clazz.getDeclaredField("value");
field.setAccessible(true);
field.set(a, b.intValue());
field.set(b, temp);
field.setAccessible(false);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
不过第一个感觉不太可能吧,楼主有没有答案啊,说说啊