永发信息网

java如何实现2个数之间互换

答案:7  悬赏:80  手机版
解决时间 2021-04-03 00:35
java如何实现2个数之间互换
最佳答案
int a=1,b=0;
System.out.println("a=" + a + ";b=" + b);
int tmp;
tmp=a;
a=b;
b=tmp;
System.out.println("a=" + a + ";b=" + b);
全部回答
要加上ref追问什么意思?
要加上ref追问ref是什么?
你只是互换了参数而已
基本数据类型是无法再其他方法中改变值的,只用引用数据类型才能这样修改
因为java传递的是两个简单类型(int型),所以是传值,也就是把值给了num1和num2,以后无论num1和num2怎么变怎么换,跟a[0]和a[1]都无任何关系了,a[0]a[1]不会有任何变化。
要想使a[0]和a[1]也跟着改变,就必须要传引用,java里规定传递简单类型都是传值,传递对象才是引用传递,你这个代码可以改变一下(只传两个值过去是绝对不可能的):
public class TestLoopTryCatch {
public static void main(String args[]) {
int [] a={1,2};
swap(a);
System.out.println(a[0]);
System.out.println(a[1]);
}

public static void swap(int a[]) {
int temp;
temp= a[0];
a[0] = a[1];
a[1] = temp;
}

}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
心情好坏会影响把脉看男女吗
金蝶公司适合应届生吗
People the southwest of China were in grea
目前关键第四号原著小说有几本?哪里可以买
20g钢管焊接用什么焊条
梦见把亲人放进棺材活埋了,是什么意思,对被
用20牛的水平力把重力为15牛的木块紧压在竖直
润滑油api sn5w-30 什么意思?
小学师生座谈会征求教学建议相关材料
cos负30度是多少
魔兽世界DZ和LR谁更厉害?
幽门螺杆菌多少算正常幽门螺杆菌16.5正
这图说明了cf只适合小学生sb玩吧
请问那些年薪几十万的都是些什么工作?
抚顺市小博士幼儿园地址在哪,我要去那里办事
推荐资讯
快要死了,遗书怎么写,首先我恨父母,请给我
俯身捡起一片落叶, 那清晰的脉络是纯净的心
四到五千的电视哪个品牌好一些?
清汤的标准做法?
林俊杰的《江南》中江南具体指哪里
钩针的到退针'咋钩
关于9.18的资料
厦门到广州的火车票要提前多少天预订啊?今天
镦粗时对坯料尺寸有什么要求
把350除以七等于五十把25乘以6等于一百五十百
一小时 12分之1多少分钟?
虹桥火车站到嘉华医院怎么走
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?