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));
}
}`
这里在这段代码中我可以将值返回到check类,因为我对此有点困惑,在同一个类中我可以返回值,但我必须知道我可以返回使用两个类,并在此处使用revarray如果我返回n然后它显示错误,如int不能转换为int [] return n
答案 0 :(得分:0)
你的反向数组返回int,而不是int数组,这就是你得到错误的原因。你最好在数组上做一个从0到n / 2的循环,并交换元素号i和元素n-1-i
答案 1 :(得分:0)
要反转数组,您需要两个索引:一个用于迭代给定的数组,另一个用于迭代新数组。代码:
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]