public viod change(int a,int b) {
int temp ;
temp = a;
a = b;
b = temp;
}
java中能否写一个方法在主函数中调用可以使2个数数字交换,c语言用指针实现,java怎么弄
答案:4 悬赏:0 手机版
解决时间 2021-02-26 16:47
- 提问者网友:孤山下
- 2021-02-26 00:25
最佳答案
- 五星知识达人网友:独行浪子会拥风
- 2021-02-26 01:37
有以下两种方法:
1:将a,b都定义成类变量,这样可以替换。
2:将a,b存储到对象中,如HashMap或数组中,替换后返回
否则你只能在此方法中改变他们的值,int属于基本类型,都是传的值
1:将a,b都定义成类变量,这样可以替换。
2:将a,b存储到对象中,如HashMap或数组中,替换后返回
否则你只能在此方法中改变他们的值,int属于基本类型,都是传的值
全部回答
- 1楼网友:醉吻情书
- 2021-02-26 04:46
java 没有指针 但是有引用啊。 一样的道理。
所以你说的是可以的。
- 2楼网友:拜訪者
- 2021-02-26 03:32
可以不用使用指针,下面是我的解法;
void swap(int a,int b){
a=a+b;
b=a-b;
a=a-b;
}
- 3楼网友:轮獄道
- 2021-02-26 02:16
class NumberChange {
public static void main(String[] args) {
NumberChange change = new NumberChange();
change. change(3,5);
}
public viod change(int a,int b) {
System.out.println("交换前, a=" + a + ", b" + b);
int temp ;
temp = a;
a = b;
b = temp;
System.out.println("交换后, a=" + a + ", b" + b);
}
}
这样运行就可以了。
你说的在C中那是引用传递。
在java中因为byte,char,short,int,long,float,double,boolean等这些都是基本类型是不存在引用传递的。
除了上面的那8种基本类型,java中其他的都是引用类型,对这些类型的操作就和C里面是一样的了,在参数传递过程当中都是引用传递了。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯