スタックとキューを使用して単語が回文かどうかをチェックするプログラムを作成しようとしています。
これはこれまでの私のプログラムです
import java.io.*;
import java.util.Scanner;
public class isPalindrome {
public static boolean isPal(String str){
QueueArrayBased queue = new QueueArrayBased();
StackArrayBased stack = new StackArrayBased();
for (int i = 0; i<=str.length(); i++){
queue.enqueue(i);
stack.push(i);
}
while (queue.isEmpty != 0){
if (queue.dequeue() != stack.pop())
return false;
}
return true;
}
public static void main (String [] args){
Scanner keyboard = new Scanner(System.in);
System.out.print("Type Word: ");
String str = keyboard.nextLine();
System.out.println("Word: " + str);
System.out.println(isPal(str));
}
}
コンパイルすると、次のようにエラーが発生します。
"isPalindrome.java:16: cannot find symbol
symbol : variable isEmpty
location: class QueueArrayBased
while (queue.isEmpty != 0)"
エラーが発生する isEmpty メソッドを次に示します。
public boolean isEmpty()
{
return count == 0;
} // end isEmpty
私はJavaが初めてで、何が間違っているのかよくわかりません。