交換兩個變量的值的幾種方式

灬猜想灬 13年前發布 | 2K 次閱讀 CAINE 代碼調試


//精簡,一行代碼搞定
int x = 3, y = 7;
System.out.printf("x = %d, y = %d\n", x, y);
x = y + 0 * (y = x);
System.out.printf("x = %d, y = %d\n", x, y);

//兼容,支持Integer.MAXVALUE的+操作 int a = 5, b = 2; System.out.printf("a = %d, b = %d\n", a, b); a ^= b; b ^= a; a ^= b; System.out.printf("a = %d, b = %d\n", a, b);

//明了 int p = 4, q = 9; System.out.printf("p = %d, q = %d\n", p, q); p = p + q; q = p - q; p = p - q; System.out.printf("p = %d, q = %d\n", p, q);

//⊙﹏⊙b汗,產生中間變量浪費空間,但是大部分人是用這個吧... int u = 8, v = 6; System.out.printf("u = %d, v = %d\n", u, v); int temp = u; u = v; v = temp; System.out.printf("u = %d, v = %d\n", u, v);</pre>
</div>

 本文由用戶 灬猜想灬 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!
寫博客

博客分類