導航:首頁 > 編程語言 > java交換函數

java交換函數

發布時間:2022-05-18 23:49:23

⑴ 如何在java中實現交換兩個變數值的方法

public class Demo {
public static void main(String[] args) {
//調用這個靜態方法傳遞兩個int 型的值就是了。
exchange(2, 6);
}

public static void exchange(int a, int b) {
int temp = 0;
temp = a;
a = b;
b = temp;
System.out.println("a=" + a);
System.out.println("b=" + b);

}
}

⑵ java如何實現2個數之間互換

利用異或(a^b)^b 等於a,進行交互,不需要設置臨時變數也不會超范圍。代碼如下:

import java.util.Scanner;

public class woo {

public static void main(String args[]) {

Scanner scan =new Scanner(System.in);

System.out.println("輸入兩個數a, b");

int a = scan.nextByte();

int b = scan.nextByte();

System.out.printf("交換前:a = %d, b = %d ", a, b);

a = a^b;

b = a^b;

a = a^b;

System.out.printf("交換後:a = %d, b = %d", a, b);

}

}

(2)java交換函數擴展閱讀

值傳遞就是在方法調用的時候,實參是將自己的一份拷貝賦給形參,在方法內,對該參數值的修改不影響原來實參。

引用傳遞是在方法調用的時候,實參將自己的地址傳遞給形參,此時方法內對該參數值的改變,就是對該實參的實際操作。

在java中只有一種傳遞方式,那就是值傳遞.可能比較讓人迷惑的就是java中的對象傳遞時,對形參的改變依然會意向到該對象的內容。

⑶ java程序為什麼一定要寫swap(x,y)

swap(x,y)是一個函數,字面意思是交換傳入的兩個參數的值。

函數內部會將變數x和變數y的值交換,並且列印出交換後的變數值,這里列印的是x=20,y=10

然而這樣並不能真正把main函數裡面定義的變數x,y的值互相交換,因為在這里傳遞給swap()函數的變數只是x,y的一個拷貝,然後再在函數內部對這個副本的值進行交換是不會對原來的x,y的值造成影響。

所以main函數里最後會列印出x=10,y=20

如果想要真正實現交換全部變數x,y的值,只需要把swap函數定義成static void swap(Integer x,Integer y),函數內部再對其進行交換就可以了。這里用到了Java中的包裝數據類型,也稱原始數據類型,用對象來接受傳遞過來的數據,然後對象就會指向全局變數x,y的內存地址,這個作用相當於C語言中的指針。這是讓swap函數起作用的關鍵原理所在。

並不是所有的Java程序中都會用到這個函數,根據業務需要進行保留或刪除吧。

⑷ java 怎麼實現Swap函數 交換兩個數

int n10,m=20,p=0;
p=n;
n=m;
m=p;
這就是最原始的用臨時變數實現數據交換的處理

⑸ 如何用Java寫一個交換函數

//交換A和B
publicvoidexchange(Objecta,Objectb){
Objectt=a;
a=b;
b=t;
}

⑹ 求教:Java 語言是否可以用函數實現兩個數的交換

Java的函數只能有一個返回值,如果只是交換兩個數可以用數組存儲,通過下標來獲取。

public double[] change(double a,double b){
return new double[]{b,a};

}

⑺ 在java中如何實現這個數值互換函數

問問題的不是菜鳥就是大神。呵呵。像一樓說的一樣,操作不了內存地址。調用方法傳遞的是引用的副本。原引用不動,可以把2個數字寫到數組里,數組引用傳進去,根據傳遞的引用找到堆中的數據。將數組內的數據互換,可以實現。但是不是要求的那樣直接互換。

⑻ java中編寫函數交換兩個數!並且導入使用!我函數里兩數可以交換!使用時就不可以交換了!求指教

由於java不像C,C++沒有指針的概念,也不像C#基本類型也可以引用,所以交換兩個基本類型的變數的值確實不方便。可以寫一個類來實現

⑼ 【新手求教】 java 想交換兩個數的值,用函數該怎麼寫

這么寫就沒錯誤了。


你要是用swap方法,應該多個賦值


把swap的結果,賦值給xy

⑽ 用Java語言描述輸入十個數 第一個數與最小的數交換,最後一個數與最大的數交換 用三個函數

packagecom.bank.cn;

importjava.text.DateFormat;
importjava.text.SimpleDateFormat;
importjava.util.ArrayList;
importjava.util.Date;
importjava.util.List;

publicclassTest{

publicstaticvoidmain(String[]args){
int[]a={3,1,5,7,9,2,4,10,8,6};
System.out.println("原始數組:");
prinf(a);
intmin=0;
for(inti=1;i<a.length;i++){
if(a[min]>a[i]){
min=i;
}
}
int[]b=swap(min,a);
System.out.println("最小值與第一個數交換後的數組:");
prinf(b);
intmax=0;
for(inti=1;i<a.length;i++){
if(a[max]<a[i]){
max=i;
}
}
int[]c=swap2(max,b);
System.out.println("最大值與最後一個數交換後的數組:");
prinf(c);
}
//格式化列印數組
privatestaticvoidprinf(int[]c){
for(inti=0;i<c.length;i++){
System.out.print(c[i]+" ");
}
System.out.println(" ");

}
//交換最小值
privatestaticint[]swap(intmin,int[]a){
inttemp;
temp=a[0];
a[0]=a[min];
a[min]=temp;
returna;
}
//交換最大值
privatestaticint[]swap2(intmax,int[]a){
inttemp;
temp=a[a.length-1];
a[a.length-1]=a[max];
a[max]=temp;
returna;
}
}

結果如下:

閱讀全文

與java交換函數相關的資料

熱點內容
二次元表格編程 瀏覽:20
plc編程器保停 瀏覽:963
如何降低伺服器的內存佔用率 瀏覽:868
阿里雲伺服器是個什麼意思 瀏覽:817
國內最好的數控編程培訓學校 瀏覽:13
222乘104列是演算法 瀏覽:159
程序員溝通正確姿勢 瀏覽:969
魔玩app怎麼視頻推廣 瀏覽:960
程序員抽獎送禮 瀏覽:458
北京java程序員薪資 瀏覽:658
如何創建網路平台或者app 瀏覽:355
python隨機數生成控制概率 瀏覽:236
壓縮機並聯運行 瀏覽:899
兩位單片機 瀏覽:63
四川音樂類投檔線的演算法 瀏覽:650
建行app如何改轉賬卡 瀏覽:26
android開發升級 瀏覽:299
要火社區app進不去怎麼辦 瀏覽:826
安卓手機上的自定義功能怎麼用 瀏覽:230
方舟伺服器怎麼購買進去資格 瀏覽:44