首頁>Club>
Java如何實現a=6,b=8時,a和b的值互換? 要求,程式碼中不允許有a和b之外的變數
3
回覆列表
  • 1 # 蘇老師聊技術

    為啥有這要求?

    想不通還有面試的時候 設定很多條件後讓你實現一個功能。不能自由發揮麼?保證效能的同時達到目的不就行了?

  • 2 # 黯殤26994223

    if a==6&&b==8

    a==8;

    b==6;

    end[狗頭]

  • 3 # 明明113534521

    利用數軸上ab距離不變特性,先做減法,可以避免溢位

    a=a-b;//此時a是ab距離

    b=b-a;//b交換到原來位置a

    a=b+a;//a由ab距離,交換到原來

    位置

  • 4 # 夕陽雨晴

    /** * 實現a=6,b=8時,a和b的值互換 */public class ExchangeNum { public static void main(String[] args) { int a = 6, b = 8; a = exchange(b, b = a); System.out.println("a=" + a + ", b=" + b); } public static int exchange(int a, int b) { return a; }}

  • 5 # 數碼羊

    利用中間變數進行值交換

    設定T為中間變數

    T=a

    a=b

    b=T

  • 6 # 幽兔CC

    if(a == 6 && b == 8){

    a = 8;

    b = 6;

    }

  • 7 # 樹洞挖坑機

    a=a^b;

    b=a^b;

    a=a^b;

    好像也有其他方法,不過我印象中也只剩這一種了,不明白為什麼面試很熱衷這個題目,有種孔乙己的茴字有幾種寫法一樣,像程式設計開發類感覺自己動手敲程式碼收穫更多,有時候憑空想象一些程式的執行結果花費了時間還是不懂為什麼會如此,從專案中學習最好了。

    不明白我為什麼要如此一本正經的回答這個問題,Java,c++,Python我都有學,不過每種都是半吊子水平,超級羨慕那種電影裡駭客大佬,噼裡啪啦敲幾下程式碼就破解密文。

  • 中秋節和大豐收的關聯?
  • 火箭勝猛龍,雷霆負森林狼,開拓者輸灰熊,火箭殺進西部第三,怎麼評價西部排名?