Java实现数组反转翻转的方法实例
作者:pan_jinquan 发布时间:2021-09-19 00:21:26
标签:Java,数组反转
数组翻转的方法(java实现),数组翻转,就是将数组倒置,例如原数组为:{"a","b","c","d"},那么翻转后的数组为{"d","c","b","a"}。
【方法一】使用集合个工具类: Collections.reverse(ArrayList) 将数组进行反转:
import java.util.ArrayList;import java.util.Collections;
public class Main {
public static void main(String[] args) {
ArrayList arrayList = new ArrayList();
arrayList.add("A");
arrayList.add("B");
arrayList.add("C");
arrayList.add("D");
arrayList.add("E");
System.out.println("反转前排序: " + arrayList);
Collections.reverse(arrayList);
System.out.println("反转后排序: " + arrayList);
}
}
以上代码运行输出结果为:
反转前排序: [A, B, C, D, E]
反转后排序: [E, D, C, B, A]
【方法二】使用集合ArrayList实现反转:
【方法三】直接使用数组实现反转,即,反转后数组的第一个元素等于源数组的最后一个元素:
方法二和方法三的实现代码如下:
package javatest2;
import java.util.ArrayList;
public class JavaTest2 {
public static void main(String[] args) {
String[] Array = { "a", "b", "c", "d", "e" };
reverseArray1(Array);// 使用集合ArrayList实现反转
for (int j = 0; j < Array.length; j++) {
System.out.print(Array[j] + " ");
}
System.out.print("\n");
String[] temp = reverseArray2(Array);// 直接使用数组实现反转
for (int j = 0; j < temp.length; j++) {
System.out.print(Array[j] + " ");
}
}
/*
* 函数:reverseArray1和reverseArray2
* 功能:实现 数组翻转
* 例如:{'a','b','c','d'}变成{'d','c','b','a'}
*/
private static void reverseArray1(String[] Array) {
ArrayList<String> array_list = new ArrayList<String>();
for (int i = 0; i < Array.length; i++) {
array_list.add(Array[Array.length - i - 1]);
}
Array = array_list.toArray(Array);
}
private static String[] reverseArray2(String[] Array) {
String[] new_array = new String[Array.length];
for (int i = 0; i < Array.length; i++) {
// 反转后数组的第一个元素等于源数组的最后一个元素:
new_array[i] = Array[Array.length - i - 1];
}
return new_array;
}
}
来源:http://blog.csdn.net/guyuealian/article/details/51113133


猜你喜欢
- 面试题1:谈一下你对 Nginx 的理解Nginx 是一款自由的、开源的、高性能的 HTTP 服务器和反向代理服务器;同时也是一个 IMAP
- 话不多说,先看代码!/** * Created by david on 2017-7-5. */import com.google.gson
- 上一篇文章实现了微信登录的移动端功能,下面继续完善功能,实现微信登录服务端功能服务端登录功能实现在以往文章里已经实现了服务端mvc框架,而登
- Java环境配置原理详解1.Jdk安装目录文件说明:一般jdk安装目录及路径 \Java\jdk1.7.0_79\lib,里面主要包含以下文
- 一、Struts2 * 原理:Struts2 * 的实现原理相对简单,当请求struts2的action时,Struts 2会查找配置文件,
- 高并发下restTemplate的错误分析1. 问题现象和分析org.apache.http.conn.ConnectionPoolTime
- 很多开发者表示,不知道Android的Drawable和Bitmap之间如何相关转换。下面Android123给大家两种比较简单高效的方法。
- 定义:封装某些作用于某种数据结构中各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。类型:行为类模式类图:例子:例如
- 打包发布jar包部署相对较为简单,尤其是在分布式服务比较多的情况下。单体项目如果是单体项目,只需要找到maven的插件,点击package运
- 本文实例为大家分享了Android自定义View实现标签流效果的具体代码,供大家参考,具体内容如下一、概述Android自定义View实现标
- 在Java 字符终端上获取输入有三种方式:1、java.lang.System.in (目前JDK版本均支持)2、java.util.Sca
- Struts2是Struts社区和WebWork社区的共同成果,我们甚至可以说,Struts2是WebWork的升级版,他采用的正是WebW
- DataTable.Select()根据条件筛选数据很多时候我们获取到一个表的时候需要根据表的包含的队列去筛选内容,一般来说可能想到的就是遍
- spring xml中配置视图如果是如下<property name="defaultViews"><
- 通常用java来打包文件生成压缩文件后,有如下两个地方会出现乱码 :1、内容的中文乱码问题,这个问题网上很多人给出了解决方法,主要有两种方法
- 本文实例讲述了C#实现带阴历显示的日期代码,分享给大家供大家参考。具体方法如下:这是一个用于酒店预定功能的带日期控件,类似去哪网酒店预定,由
- 本文实例为大家分享了java http token的具体代码,供大家参考,具体内容如下package com.monitoring.comm
- 本文实例讲解了通知Notification使用方法,此知识点就是用作通知的显示,包括振动、灯光、声音等效果,分享给大家供大家参考,具体内容如
- 一、C语言关键字详解1. sizeof sizeof相信大
- 目录线程同步的几种方法:阻塞加锁(lock)Monitors互斥锁(Mutex)信号和句柄InterlockedReaderWriterLo