JAVA - Предметы не вносятся в список должным образом?
Это своего рода продолжениеэтот вопрос, Мне удалось выяснить весь JTextField, не давая мне войти в какую-либо проблему. Теперь у меня есть отдельная проблема, что пункт неt правильно введен в список.
Я все еще думаю, что вы, ребята, должны смотреть нарепозиторий GitHub так как я'Я размещаю только небольшую часть кода здесь, но здесьПо крайней мере, соответствующие части.
Вот'сGUI
программа (или хотя бы соответствующие части):
import java.awt.event.*;
import javax.swing.*;
public class GUI extends JPanel implements ActionListener {
LinkedList foodItemList = new LinkedList();
...
protected JTextField textField;
public GUI() {
textField = new JTextField(20);
textField.addActionListener(this);
add(textField);
...
}
boolean textSubmitted = false;
String current_command = "";
Simulator helper = new Simulator();
String text = "";
double p = 0.0;
int q = 0;
String d = "";
double s = 0.0;
String so = "";
String c = "";
...
public void add_c() {
textSubmitted = false;
current_command = "";
c = text;
helper.add(foodItemList, text, p, q, d, s, so, c);
}
...
public void actionPerformed(ActionEvent e) {
String command = e.getActionCommand();
if (command.equals(buttonCommands[0])) {
text = textField.getText();
textSubmitted = true;
textField.setText("");
...
else if (current_command.equals("add6"))
add_c();
...
}
...
}
public static void createAndShowGUI() {
JFrame frame = new JFrame("Vendor Interface");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
GUI newContentPane = new GUI();
newContentPane.setOpaque(true);
frame.setContentPane(newContentPane);
frame.pack();
frame.setVisible(true);
}
}
Вот'сSimulator
программа:
public class Simulator {
public void add(LinkedList fi, String text, double p, int q, String d, double s, String so, String c) {
fi.add(new FoodItem(text,p,q,d,s,so,c));
}
...
}
Вот:LinkedList
public class LinkedList implements LinkedListInterface {
public LinkedListNode list;
...
@Override
public void add(T element) {
if (!contains(element)) {
LinkedListNode newNode = new LinkedListNode(element, list);
list = newNode;
count++;
}
else
System.out.println("Element is already included.");
}
@Override
public boolean contains(T element) {
LinkedListNode current = list;
if (!isEmpty()) {
while (current != null) {
if (current.getElement().equals(element))
return true;
current = current.getLink();
}
}
return false;
}
public boolean containsName(String s) {
LinkedListNode current = list;
if (isEmpty())
return false;
else {
while (current != null) {
if (current.getElement().getClass().getName().equals("FoodItem")) {
FoodItem fi = (FoodItem) current.getElement();
if (fi.name.equals(s))
return true;
}
current = current.getLink();
}
return false;
}
}
...
@Override
public boolean isEmpty() {
if (list == null)
return true;
else
return false;
}
...
}
Вот:LinkedListNode
public class LinkedListNode {
T element;
LinkedListNode link;
public LinkedListNode(T element) {
super();
this.element = element;
this.link = null;
}
public LinkedListNode(T element, LinkedListNode link) {
super();
this.element = element;
this.link = link;
}
public T getElement() {
return element;
}
public void setElement(T element) {
this.element = element;
}
public LinkedListNode getLink() {
return link;
}
public void setLink(LinkedListNode link) {
this.link = link;
}
}
Я думаю что'все, что мне нужно опубликовать ... дайте мне знать, если естьчто-нибудь еще!
Заранее спасибо за помощь!