「java数组逆序赋值」实现数组的逆序
今天给各位分享java数组逆序赋值的知识,其中也会对实现数组的逆序进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
JAVA数组如何实现逆序存放?
我给你写一个很简单的程序,呵呵
保证很简单,就一个for循环,而且for循环里就四句简单的语句:
public class A {
public static void main(String[] args) {
int[] a = { 1, 2, 3, 4, 5 };
for (int i = 0; i a.length/2; i++) {
int t;
t=a[i];
a[i]=a[a.length-1-i];
a[a.length-1-i]=t;
}
for (int i = 0; i a.length; i++) {
System.out.println(a[i]);
}
}
}
java的数组逆序问题
我改了下,下面有输出结果,不知道是不是你想要的,
不是的话,这个例子就当是给你的参考吧,呵呵
import java.util.Scanner;
public class aaaaaa
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
String[] talk=new String[]
{"在Java",
"数据类型分类","一类是基本数据类型",
"二类是引用数据类型",
"要理解这两类数据类型飞区别"
};
System.out.println("请输入5句话");
for(int i=0; italk.length; i++)
{
System.out.println("第一句话:"+talk[0]);
System.out.println("第二句话:"+talk[1]);
System.out.println("第三句话:"+talk[2]);
System.out.println("第四句话:"+talk[3]);
System.out.println("第五句话:"+talk[4]);
System.out.println("第"+(i+1)+"句话:");
talk[i] = input.next();
}
System.out.println("逆序输出5句话:");
for(int i=talk.length-1; i=0; i--)
{
System.out.println(talk[i]);
}
}
}
输出结果是
/*
----------------------------------------
请输入5句话
第一句话:在Java
第二句话:数据类型分类
第三句话:一类是基本数据类型
第四句话:二类是引用数据类型
第五句话:要理解这两类数据类型飞区别
请输入第1句话:
a
第一句话:a
第二句话:数据类型分类
第三句话:一类是基本数据类型
第四句话:二类是引用数据类型
第五句话:要理解这两类数据类型飞区别
请输入第2句话:
b
第一句话:a
第二句话:b
第三句话:一类是基本数据类型
第四句话:二类是引用数据类型
第五句话:要理解这两类数据类型飞区别
请输入第3句话:
c
第一句话:a
第二句话:b
第三句话:c
第四句话:二类是引用数据类型
第五句话:要理解这两类数据类型飞区别
请输入第4句话:
d
第一句话:a
第二句话:b
第三句话:c
第四句话:d
第五句话:要理解这两类数据类型飞区别
请输入第5句话:
e
逆序输出5句话:
e
d
c
b
a
----------------------------------------------------
*/
JAVA 将一个数组逆序,然后再输出。
这个是根据你的程序改的,已经编译通过 import java.util.*; public class test5 { public static void main(String[] args) { Scanner input= new Scanner(System.in); System.out.print("请输入数组的长度:"); int num=input.nextInt(); int[] score=new int[num]; for(int i=0;inum;i++){ System.out.print(i+1+":"); score[i]=input.nextInt(); } System.out.println("\n逆序后为:"); for(int i = 0;i num/2-1 ;i++){ int temp = score[i]; score[i] = score[num-1-i]; score[num-1-i] = temp; } for(int i=0;inum;i++){ System.out.println(score[i]); } } } SCORE数组里的元素顺序已经逆向
用JAVA编写一个程序,对数组中每个元素赋值,然后按逆序输出。
public class ArraySort {
/**
* @param args
*/
public static void main(String[] args) {
int[] a = { 12, 2, 45, 23, 9, 88, 33, 23, 22, 5, 4, 4, 5, 1, 9, 7, 2,
7, 8, 0 };
ArraySort.bubbleSort(a);
}
/**
* 冒泡排序。从大到小排序。br
*
* @param source
* @return
*/
public static int[] bubbleSort(int[] source) {
boolean isSort = false; // 是否排序
for (int i = 1; i source.length; i++) {
isSort = false; // 在每次排序前都初始化为false
for (int j = 0; j source.length - i; j++) {
if (source[j] source[j + 1]) {
int temp = source[j];
source[j] = source[j + 1];
source[j + 1] = temp;
isSort = true; // 为TRUE表明此次循环(外层循环)有排序。
}
}
if (!isSort)
break; // 如果没有排序,说明数据已经排序完毕。
// 输出每个子循环排序后的数组中的元素
printArray(source, i);
}
return source;
}
/**
* 循环输出数组中的元素。
*
* @param a
* @param idx
* ,第一层循环的index
*/
public static void printArray(int[] a,int idx) {
for (int i = 0; i a.length; i++) {
System.out.print(a[i] + (i != a.length-1?",":""));
}
System.out.println("--idx:" + idx);
}
}
如何将数组元素逆序
项目中我们会遇到需要将数组元素逆序输出的情形,可以有好几种方法完成这个需求:
1、方法一:逆序遍历数组元素并将元素放入新数组,分析时间复杂度是O(n),空间复杂度是o(n)
2、方法二:扫描数组元素的前半部分元素,将元素sqList i 与其余后半部分对应的元素sqList[sqList.length - i - 1]进行交换,时间复杂度为O(n/2),不需要额外的空间
3、方法三:Collections.reverse(sqList),jdk内部源码实现如下,可以看到jdk源码的实现方式和方法二的思想是一致的,都是交换相应位置上的元素。所以Java中若数组元素逆序直接调用Collections.reverse方法即可。
4、方法四:将数组元素使用某一字符,如-,Join得到一个字符串,使用StringBuffer的reverse方法后再讲字符串以-分割得到数组即可。
关于java数组逆序赋值和实现数组的逆序的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-12-18,除非注明,否则均为
原创文章,转载请注明出处。