Java 数组元素逆序Reverse的三种方式

题目

在这里插入图片描述

代码实现

说明

    int[] originArray; //原始数组
    int[] reverseArray;//反转后的数组
    int length = 0; //原始数组的长度

方案一

使用java工具类java.util.Collections中的自带方法Collections.reverse()
以下是java.util.Collections.reverse()方法的声明

public static void reverse(List<?> list)

看到参数是一个list,而并非是数组int[],所以需要先新建一个ArrayList存放原数组originArray的元素

    public void arrayReverse1() {
        reverseArray = new int[length];
        ArrayList arraylist = new ArrayList();
        for (int i = 0; i < length; i++) {
            arraylist.add(originArray[i]); //存放元素
        }
        Collections.reverse(arraylist); //使用方法进行逆序
        //完成逆序后,可以保存到新数组reverseArray
        for (int i = 0; i < length; i++) {
            reverseArray[i] = (int) arraylist.get(i);
        }
    }
 

方法二

产生一个新数组按逆序存放原数组的元素

    public void arrayReverse2() {
        reverseArray = new int[length];
        for (int i = 0; i < length; i++) {
            reverseArray[i] = originArray[length - i - 1];
        }

方法三

将原数组通过前后交换实现逆序

    public void arrayReverse3() {
        int temp = 0;
        for (int i = 0; i < length / 2; i++) {
            temp = originArray[i];
            originArray[i] = originArray[length - i - 1];
            originArray[length - i - 1] = temp;
        }
    }

主函数

public static void main(String[] args) {
        ArrayReverse ar = new ArrayReverse();
        ar.createArray(10);
        ar.show(ar.originArray); //显示初始顺序
        //第一种reverse结果
        ar.arrayReverse1();
        ar.show(ar.reverseArray);
        //第二种
        ar.arrayReverse2();
        ar.show(ar.reverseArray);
        //第三种
        ar.arrayReverse3();
        ar.show(ar.originArray);
    }

测试结果

在这里插入图片描述

  • 11
    点赞
  • 56
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值