java基礎變數的交換
java基礎——變數的交換
說到變數的交換我們第一時間想到的就是使用第三方的變數來進行交換,如下:
public static void main(String[] args) {
int a = 40;
int b = 60;
int c;
c= a; //c = 40
a = b; // a = 60
b = c; // b = 40
}
上面程式碼使用第三方變數就把a和b的值交換過來了,但是,如果不使用第三方變數,可以用什麼方法交換兩個變數呢?這個問題面試中也經常問道,下面就來看看不使用第三方的變數如何交換兩個變數的值吧!
第一種方法:使用數學運算子
使用加減運算:
public static void main(String[] args) {
int a = 40;
int b = 60;
a = a + b;
b = a - b;
a = a - b;
System.out.println("a為:"+ a); // 60
System.out.println("b為:"+ b); // 40
}
或者使用乘除運算:
public static void main(String[] args) {
int a = 40;
int b = 60;
a = a * b;
b = a / b;
a = a / b;
System.out.println("a為:"+ a); // 60
System.out.println("b為:"+ b); // 40
}
第一種方法:使用賦值方法
上面的程式碼看起來比較臃腫,這個方法一條程式碼就解決了!
public static void main(String[] args) {
int a = 40;
int b = 60;
a = b + (b = a) * 0 ;
System.out.println("a為:"+ a); // 60
System.out.println("b為:"+ b); // 40
}
看不懂上面程式碼的朋友需要還好的學習下Java的基礎了!我們可以拆開右邊看:首先 b = 60 ,a = 40,套入程式碼裡面就是 60 + ( 40 ) * 0,為什麼括號裡面是40就不用多說了吧,a 的值賦值給了b 所以b現在等於40了那麼括號裡面也就為40,先算乘除後算加減,60 + ( 40 ) * 0 結果就等於60,這樣就把a和b的值給換過來了!
以上就是除了使用第三方變數換值外的另外兩種思路,你們有其他更好的思路嗎?
相關文章
- 交換兩個變數變數
- 三種交換變數的方法變數
- [java基礎]之變數Java變數
- 不用第三個變數,交換變數的值變數
- 數值變數交換常用方法變數
- 交換兩個整型變數變數
- Swift交換兩個變數的值Swift變數
- 交換機基礎及stp
- 交換機及路由基礎路由
- GPG 的基礎使用:交換公鑰
- Java基礎-基礎語法-變數與常量Java變數
- Javascript基礎:變數型別轉換JavaScript變數型別
- 不使用臨時變數交換兩個變數的值變數
- JAVA基礎04——變數與常量Java變數
- 如何不使用臨時變數,交換兩個變數的值。變數
- 實驗十一 ——————二層交換基礎
- Java基礎06:變數、常量、作用域Java變數
- Java培訓基礎知識-Java的常量與變數Java變數
- 面試題-JavaScript交換兩個變數的方法面試題JavaScript變數
- JAVA基礎6-變數、常量、作用域Java變數
- java基礎06-變數、常量、作用域Java變數
- Java逆向基礎之靜態變數存取Java變數
- Python基礎:變數Python變數
- python變數基礎Python變數
- 一看就懂的交換機基礎知識
- java基礎(九) 可變引數列表介紹Java
- 異或運算的巧用 → 不用額外的變數,如何交換兩個變數的值?變數
- 透過交換指標變數的值改變大小數字的位置-學習筆記指標變數筆記
- 基礎 變數的作用範圍變數
- 【scipy 基礎】--傅立葉變換
- Flutter基礎-016-Transform變換FlutterORM
- JavaScript基礎(二)變數JavaScript變數
- python_基礎_變數Python變數
- 【譯】Java8官方教程:語言基礎—變數Java變數
- c語言 - 交換兩個變數(不建立臨時變數)兩種方法C語言變數
- C語言交換兩個變數的值的5種基本方法C語言變數
- java交換元素swap方法Java
- 『忘了再學』Shell基礎 — 21、變數的測試與內容置換變數