黑马程序员技术交流社区
标题:
记录——数组元素逆序
[打印本页]
作者:
迷路的小孩儿
时间:
2015-7-14 14:02
标题:
记录——数组元素逆序
/*
需求:数组元素逆序 (就是把元素对调)
分析:
A:定义一个数组,并进行静态初始化值
B:数组第一位和数组最后一位对调,即:
0索引和arr.length-1索引的数对调
1索引和arr.length-1-1索引的对调
2索引和arr.length-1-2索引的对调
......
注意:对调,只需要对调到arr.length/2 的时候即可
*/
class FunctionDemo {
public static void main(String[] args) {
/*
//定义一个数组,并进行静态初始化值
int [] arr = {1,3,4,6,7,8,};
//第一个数对调:
int temp=arr [arr.length-1];
arr [arr.length-1] =arr [0];
arr [0] =temp;
//第二个数对调:
int temp1=arr [arr.length-1-1];
arr [arr.length-1-1] =arr [1];
arr [1] =temp;
*/
int [] arr = {1,3,4,6,7,8,};
//调用
reverse (arr);
array (arr);
}
//用方法实现:
//两个明确:
//返回值类型:void
//参数列表:int [] arr
public static void reverse (int [] arr) {
for (int x=0;x<arr.length/2;x++) {
int temp=arr [arr.length-1-x];
arr [arr.length-1-x] =arr [x];
arr [x] =temp;
}
}
//因为对调之后想要打印出来,需要遍历数组:
public static void array (int [] arr) {
for (int y =0;y<arr.length;y++) {
System.out.println(arr [y]);
}
}
}
复制代码
作者:
迷路的小孩儿
时间:
2015-7-14 14:14
第二种思路:
class FunctionDemo {
public static void main(String[] args) {
int [] arr = {1,3,4,6,7,8,};
//调用
reverse (arr);
array (arr);
}
public static void reverse(int [] arr) {
for (int start =0,end =arr.length-1;start<=end;start++,end--) {
int temp=arr [start];
arr [start] =arr [end];
arr [end] =temp;
}
}
//因为对调之后想要打印出来,需要遍历数组:
public static void array (int [] arr) {
for (int y =0;y<arr.length;y++) {
System.out.println(arr [y]);
}
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2