Как решить проблему с Action listener?
private void DequeueActionPerformed(java.awt.event.ActionEvent evt) { a.dequeue(); if(a.count<=0){ JOptionPane.showMessageDialog(this, "This is underflow", "Message", EXIT_ON_CLOSE); } else{ JOptionPane.showMessageDialog(this, "Dequeued: "+a.Queue[a.count].toString(), "Message", EXIT_ON_CLOSE); } refresh(); }
private void EnqueueActionPerformed(java.awt.event.ActionEvent evt) { a.enqueue(jTextFieldElement.getText()); jTextFieldElement.setText(""); if(a.count==a.size ||a.count < (size-1)){ JOptionPane.showMessageDialog(this, "This is overflow", "Message", EXIT_ON_CLOSE); } refresh(); }
public boolean enqueue(Object element) { if( count==size ) return false; Queue[count] = element; count++; return true; } public Object dequeue() { if(count==0 ) return false; count--; return Queue[count]; }
Что я уже пробовал:
У меня проблема с этими кодами. Когда я ввожу size=2, размер будет равен 2. И когда я ввожу 1 число, оно работает правильно,но когда я ввожу 2-е число,оно работает неправильно ,оно добавляет Это число,но оно не должно добавлять его и должно показывать сообщение "переполнение". потому что для очередей последнее место должно быть пустым, оно не должно добавлять число в последнее место массива.как я могу это решить?что не так с моим кодом?
и вторая проблема.
вторая проблема связана с"недостаточным потоком".
когда я ввожу 2 для размера, то я ввожу 2number.а затем, когда я удаляю эти числа, после 1-го числа он показывает сообщение "underflow". но он должен показать это сообщение, когда массив пуст, и я хочу удалить его.
Извините за мой английский.
и, пожалуйста, помогите решить эти проблемы.
Заранее спасибо.