导航:首页 > 编程语言 > 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交换函数相关的资料

热点内容
多个文件解压缩 浏览:538
python字符串替换函数 浏览:825
app会员卡怎么做 浏览:921
我爱你python编码 浏览:365
一台计算机作为服务器一般可以运行什么软件 浏览:421
应用加密桌面还显示头像咋办 浏览:523
微软硬盘加密密钥 浏览:156
空调压缩机和风扇 浏览:511
代码可以编译运行 浏览:918
银行卡加密码大全真号 浏览:447
单片机测esr 浏览:412
app怎么设置消息功能 浏览:916
明词pdf 浏览:427
云域控服务器有什么用 浏览:577
字节和B站程序员 浏览:747
app推荐书要怎么做 浏览:303
unix网络编程第一卷 浏览:852
c需要pdf 浏览:865
超级解压的美甲 浏览:72
安卓手机如何永久取消静音 浏览:722