试图翻转一个数组,但一直收到错误

时间:2017-05-03 02:46:45

标签: java arrays compiler-errors

尝试测试并查看数组是否为回文,然而,我创建的flipArray方法一直给我带来麻烦。编译器给出了“非语句”错误,我不确定是什么阻止它。代码应该翻转数组b,然后比较数组a和数组b以查看它们是否相同:

public class Lab13_2{
    public static final int SIZE = 50;
    public static void main (String [] args){
        Boolean palindrome = false;
        String[] a = {"hello" , "goodbye", "goodbye" , "hello"};
        String[] b = new String[SIZE];


        b = a.clone();     
        palindrome = getPalindrome(a,b,a.length);
    }

    public static boolean getPalindrome(String[] a, String[] b, int arrayLength{
        b = flipArray(b);
        for(int i = 0; i <arrayLength; i++){
            if(a[i] != b[i]){
                return false;
            }
        }
        return true;
    }

    public static String[] flipArray(String[] array){
        for(int=0; i <array.length/2; i++){
            int temp = array[i];
            array[i] = array[array.length-1-i];
            array[array.length-1-i] = temp;
        }
        return array;    
        }
    }

1 个答案:

答案 0 :(得分:1)

  1. 您错过了)方法的结束getPalindrome
  2. flipArray方法中的for循环在条件或其他地方使用之前未声明i。应为for(int i = 0; i < array.length/2; i++)
  3. 您的temp变量应为String类型,而不是int
  4. 最后但并非最不重要的是,你不比较这样的字符串:

    if(a[i] != b[i])
    

    将其更改为:

    if(!a[i].equals(b[i]))