黑马程序员技术交流社区

标题: 有谁能帮我简单说一下数组的反转 [打印本页]

作者: 黑马和大灰狼    时间: 2015-7-14 00:28
标题: 有谁能帮我简单说一下数组的反转
reverse,前面的r和R都敲了试过,可是都报错了,百度上搜了下说的比较乱,谁能简单说下呢?谢谢
作者: wing-SF    时间: 2015-7-14 10:10
数组反转思路:(不知道有没有别的限定条件,所以自己写了一个)
1.查找数组有没有reverse方法,结果没有,所以只能自己写一个了
2.将数组中的每个元素封装为对象,依次存储在list集合中,该题封装为Integer对象
3.然后使用集合的反转方法,collections.reverse(list),对list集合中的元素进行反转
4.然后将list集合中的元素,依次赋值给数组中的元素,(此处会设计类型转化,如果数组中元素不是同一类型,无法操作)
5.然后遍历数组,打印输出,完成反转


import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

class Test1{
        public static void main(String[] args){
                int[] arr={13,34,45,67,78,98,78,-43,67,45,-1};
                List list=new ArrayList();//创建list集合,用来存储数组封装后的对象
               
                for (int i = 0; i < arr.length; i++) {
                       
                        Integer abc=new Integer(arr[i]);//此处封装数组中元素为Integer对象
                       
                        list.add(abc);//将数组中元素依次添加到list集合中
                }
                Collections.reverse(list);//集合反转
                for (int i = 0; i < arr.length; i++) {
                        arr[i]=(int) list.get(i);//将反转后的list集合中的元素依次复制给数组arr
                }
               
                for (int i = 0; i < arr.length; i++) {
                        System.out.println("arr["+i+"]"+"="+arr[i]);
                }
        }
}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2