不使用中間變量來交換兩個變量的值

1. 使用加減法

int x = 3;
int y = 5;
x = x ^ y;
y = x ^ y;
x = x ^ y;

2. 使用異或

int x = 3;
int y = 5;
x = x + y;
y = x - y;
x = x - y;

3. 只要在int範圍內都沒有問題

int x = Integer.MAX_VALUE;
int y = Integer.MAX_VALUE - 15;
x = x + y;
y = x - y;
x = x - y;


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章