尝试测试并查看数组是否为回文,然而,我创建的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;
}
}
答案 0 :(得分:1)
)
方法的结束getPalindrome
。flipArray
方法中的for循环在条件或其他地方使用之前未声明i
。应为for(int i = 0; i < array.length/2; i++)
。temp
变量应为String
类型,而不是int
。最后但并非最不重要的是,你不比较这样的字符串:
if(a[i] != b[i])
将其更改为:
if(!a[i].equals(b[i]))