Java中关于数组交换反转,逆序输出四种做法,让你一文直接上手四种做法

简介: Java中关于数组交换反转,逆序输出四种做法,让你一文直接上手四种做法

数组反转和逆序输出的思路:

      1、数组反转的思路是:用0号元素和数组最后一个元素进行互换,然后分别继续互换到start(前一个元素下标)大于end(后一个元素下标)的时候停止互换,打印反转后的数组,这个思路可以应用到逆序输出

      2、逆序输出直接从后面倒过来输出即可


            做法1:

   int [] arr={11,22,33,44,55};

        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] 相当于从后面开始访问回来的下标
            arr[arr.length-1-i]=temp;
        }


        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }

            做法2:

      int [] arr1={11,22,33,44,55};

        for (int start = 0,end=arr1.length-1; start <end; start++,end--) {   //进行数组元素互换,当start(下标)大于end(下标)的时停止互换元素

            int temp =arr1[start];
            arr1[start]=arr1[end];
            arr1[end]=temp;

        }


        for (int i = 0; i < arr1.length; i++) {
            System.out.println(arr1[i]);
        }

            做法3(数组交换的第三种做法(其实本质也是第二种做法)比较好理解):

      int [] arr2={11,22,33,44,55};

        int start=0;
        int end=arr2.length-1;
        while(start<=end){
            int temp =arr2[start];
            arr2[start]=arr2[end];
            arr2[end]=temp;

            start++;
            end--;

        }

        for (int i = 0; i < arr2.length; i++) {
            System.out.println(arr2[i]);
        }

            做法4(直接逆序输出,从后面倒过来输出,可以提高一点点效率):

   int [] arr3={11,22,33,44,55};

        for (int i=arr3.length-1;i>=0;i--){
            System.out.println(arr3[i]);
        }

作者:KJ.JK

本文仅用于交流学习,未经作者允许,禁止转载,更勿做其他用途,违者必究。
文章对你有所帮助的话,欢迎给个赞或者 star,你的支持是对作者最大的鼓励,不足之处可以在评论区多多指正,交流学习

目录
相关文章
|
15天前
|
存储 Java API
Java交换map的key和value值
通过本文介绍的几种方法,可以在Java中实现Map键值对的交换。每种方法都有其优缺点,具体选择哪种方法应根据实际需求和场景决定。对于简单的键值对交换,可以使用简单遍历法或Java 8的Stream API;对于需要处理值不唯一的情况,可以使用集合存储或Guava的Multimap。希望本文对您理解和实现Java中的Map键值对交换有所帮助。
19 1
|
23天前
|
存储 缓存 算法
Java 数组
【10月更文挑战第19天】Java 数组是一种非常实用的数据结构,它为我们提供了一种简单而有效的方式来存储和管理数据。通过合理地使用数组,我们能够提高程序的运行效率和代码的可读性。更加深入地了解和掌握 Java 数组的特性和应用,为我们的编程之旅增添更多的精彩。
31 4
|
23天前
|
存储 缓存 算法
提高 Java 数组性能的方法
【10月更文挑战第19天】深入探讨了提高 Java 数组性能的多种方法。通过合理运用这些策略,我们可以在处理数组时获得更好的性能表现,提升程序的运行效率。
19 2
|
1月前
|
存储 Java
Java“(array) <X> Not Initialized” (数组未初始化)错误解决
在Java中,遇到“(array) &lt;X&gt; Not Initialized”(数组未初始化)错误时,表示数组变量已被声明但尚未初始化。解决方法是在使用数组之前,通过指定数组的大小和类型来初始化数组,例如:`int[] arr = new int[5];` 或 `String[] strArr = new String[10];`。
|
1月前
|
Java
Java数组动态扩容和动态缩减
Java数组动态扩容和动态缩减
22 3
|
1月前
|
存储 算法 Java
带你学习java的数组军队列
带你学习java的数组军队列
35 0
|
6月前
|
前端开发 Java
java前端:删除数组中指定元素的方法
java前端:删除数组中指定元素的方法
108 1
|
3月前
|
Java 索引
Java系列 之 Java复制(拷贝)数组的4种方法:arraycopy()方法、clone() 方法、copyOf()和copyOfRan
这篇文章介绍了Java中数组复制的四种方法:`Arrays.copyOf()`、`Arrays.copyOfRange()`、`System.arraycopy()`和`clone()`方法,以及它们的使用场景和示例代码。
|
4月前
|
存储 Java 容器
Java数组的初始化方法
Java数组的初始化方法
|
6月前
|
存储 Java
Java数组与带参数方法:定义、调用及实践
Java数组与带参数方法:定义、调用及实践
70 1