テキストボックスの文字列からスタックに文字を追加しようとしています。
これまでの私のコードは次のとおりです。
String s = txtString.getText();
Stack myStack = new LinkedStack();
for (int i = 1; i <= s.length(); i++)
{
while(i<=s.length())
{
char c = s.charAt(i);
myStack.push(c);
}
System.out.print("The stack is:\n"+ myStack);
}
LinkedStackのプッシュアンドポップメソッド
public void push(Object item){
top = new ListNode(item, top);
}
public void pop(){
if(isEmpty())
throw new StackUnderflowException("Nothing removed-stack is empty");
else
top = top.getNext();
}
getnext()メソッドは、listnodesと呼ばれる別のパッケージから取得されます
public ListNode getNext() {
return nextNode; // get next node
} // end method getNext
印刷を+cに変更すると、文字列のすべての文字が印刷されますが、myStackの場合は、文字列がインデックス範囲外のエラーになります。
誰かが私が欠けているものを知っていますか?