import java.util.*;
class Revarray
{
protected static int[] reversearray(int h[])
{
for(int n:h)
{
return n;
}
}
}
public class Check
{
public static void main(String h[])
{
int no[]=new int[5];
Scanner sc=new Scanner(System.in);
System.out.println("Enter Array Elements");
for(int i=0;i<no.length;i++)
{
no[i]=sc.nextInt();
}
Revarray rev=new Revarray();
System.out.println("Value of Array are:--"+rev.reversearray(no));
}
}`
在此代码中,我可以将值返回到支票类中,因为我对此几乎没有任何困惑,在同一类中我可以返回值,但我必须知道我可以使用两个类返回,然后在Revarray中如果我返回n,则向我显示错误,例如int不能将其转换为int []返回n
您的反向数组返回int而不是int数组,这就是为什么您会出现错误的原因。您最好从0到N/2进行循环,然后交换元素编号I和元素N-1-I
要反向数组,您需要将两个索引:一个用于迭代给定数组,一个用于迭代新数组。代码:
package com.stackoverflow.main;
import java.util.Arrays;
import java.util.Scanner;
class Revarray {
protected int[] reversearray(int h[]) {
int[] reverse = new int[h.length];
int k = 0;
for (int i = h.length - 1; i >= 0; i--) {
reverse[k++] = h[i];
}
return reverse;
}
}
public class Check {
public static void main(String h[]) {
int no[] = new int[5];
Scanner sc = new Scanner(System.in);
System.out.println("Enter Array Elements");
for (int i = 0; i < no.length; i++) {
no[i] = sc.nextInt();
}
Revarray rev = new Revarray();
System.out.println("Value of Array are:--" + Arrays.toString(rev.reversearray(no)));
}
}
打印:
Enter Array Elements
3
4
5
6
7
Value of Array are:--[7, 6, 5, 4, 3]