java数组元素倒序排列问题
下面的程序,我使用数组用swap(a,b)交换时,怎么没用啊~然后用para参数传递就可以让数组倒序输出staticint[]inverseArray(int[]arra...
下面的程序,我使用数组用swap(a,b)交换时,怎么没用啊~ 然后用para参数传递就可以让数组倒序输出
static int[] inverseArray(int[] array){
int para = 0;
for(int i=0 ; i<=array.length/2 ; i++){
para = array[i];
array[i] = array[array.length-1-i];
array[array.length-1-i] = para;
// swap(array[i],array[array.length-1-i]);
}
return array;
}
static void swap(int a , int b){
int c;c = a;a = b;b = c;
}
怎么改正能加入swap方法呢? 展开
static int[] inverseArray(int[] array){
int para = 0;
for(int i=0 ; i<=array.length/2 ; i++){
para = array[i];
array[i] = array[array.length-1-i];
array[array.length-1-i] = para;
// swap(array[i],array[array.length-1-i]);
}
return array;
}
static void swap(int a , int b){
int c;c = a;a = b;b = c;
}
怎么改正能加入swap方法呢? 展开
2个回答
展开全部
由于JAVA中,并没有指针这个语法,如果你硬是要这样做,可以用数组进行传递。当然,这个数组可以是一维长度为1的数组。嘿嘿
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Java中的值传递和引用传递
在java中实质只存在一种传递方式:即值传递。 而引用传递是对C/C++而言的。结论: 对于基本类型,在方法体内对方法参数进行重新赋值,并不会改变原有变量的值。 对于引用类型,在方法体内对方法参数进行重新赋予引用,并不会改变原有变量所持有的引用。 方法体内对参数进行运算,不影响原有变量的值。 方法体内对参数所指向对象的属性进行运算,将改变原有变量所指向对象的属性值。 在JAVA中变量有以下两种: 基本类型变量,包括char、byte、short、int、long、float、double、boolean。 引用类型变量,包括类、接口、数组(基本类型数组和对象数组)。 最后我们得出如下的结论: 基本类型和基本类型变量被当作参数传递给方法时,是值传递。在方法实体中,无法给原变量重新赋值,也无法改变它的值。 对象和引用型变量被当作参数传递给方法时,在方法实体中,无法给原变量重新赋值,但是可以改变它所指向对象的属性。
在java中实质只存在一种传递方式:即值传递。 而引用传递是对C/C++而言的。结论: 对于基本类型,在方法体内对方法参数进行重新赋值,并不会改变原有变量的值。 对于引用类型,在方法体内对方法参数进行重新赋予引用,并不会改变原有变量所持有的引用。 方法体内对参数进行运算,不影响原有变量的值。 方法体内对参数所指向对象的属性进行运算,将改变原有变量所指向对象的属性值。 在JAVA中变量有以下两种: 基本类型变量,包括char、byte、short、int、long、float、double、boolean。 引用类型变量,包括类、接口、数组(基本类型数组和对象数组)。 最后我们得出如下的结论: 基本类型和基本类型变量被当作参数传递给方法时,是值传递。在方法实体中,无法给原变量重新赋值,也无法改变它的值。 对象和引用型变量被当作参数传递给方法时,在方法实体中,无法给原变量重新赋值,但是可以改变它所指向对象的属性。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询