A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© lishuai881512 中级黑马   /  2015-9-9 22:22  /  557 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

大家好  数组的 逆序 有人能解释一下吗

2 个回复

倒序浏览
把数组转为list对象,用Arraylist的API把顺序倒叙,然后转为数组。
不过这样很麻烦。 获取数组的个数,新建个数组,for循环把旧的放在新的好像更快。
回复 使用道具 举报
class Test {
        public static void main(String[] args) {
                int[] arr={11,22,33,44,55};
                reverseArry(arr);
                print(arr);
        }
        public static void reverseArry(int[] arr){             //逆序
                for(int i=0;i<arr.length/2;i++){
                        /*int temp=arr[i];
                        arr[i]=arr[arr.length-1-i];
                        arr[arr.length-1-i]=temp;*/
                        swap(arr,arr.length-1-i);
                }
        }
        public static void swap(int[] arr,int a,int b){       //交换
                int temp=arr[a];
                arr[a]=arr[b];
                arr[b]=temp;
        }
        public static void print(int[] arr){                //在控制台上输出数组
                System.out.print("[");
                for(int i=0;i<arr.length;i++){
                        if(i==arr.length-1){
                                System.out.print(arr[i]+"]");
                        }else{
                                System.out.print(arr[i]+",");
                        }
                }
        }
}
包含两种,一种封装方法swap,一种没有,
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马