chciałbym JOptionPane.showInputDialog(person.toString()); wypisać sobie listę z obiektami klasy person. Niestety pojawia mi się błąd. Jak się to powinno poprawnie napisać?
https://paste.ofcode.org/85GizB9X6GEmp9cc2LNa9h

- Rejestracja:ponad 7 lat
- Ostatnio:około 7 lat
- Postów:39
- Rejestracja:ponad 12 lat
- Ostatnio:dzień
- Postów:3595
1
Szklana kula dzisiaj nie działa, wróżka się rozchorowała, a karty tarota zamokły. Jaki masz błąd? Albo lepiej napisz, co chcesz osiągnąć.
Chcesz zamienić ArrayList do Stringa, czy też wklepane wartości skonwertować do klasy Person i dorzucić do ArrayListy?
- Rejestracja:około 9 lat
- Ostatnio:ponad 5 lat
- Postów:35
0
@Override
public void actionPerformed(ActionEvent e) {
//default persons
Person person1 = new Person("Jan", "Kowalski", 22);
Person person2 = new Person("Pawel", "Nowak", 22);
person.add(person1);
person.add(person2);
//new person from input text field
if (e.getSource() == buttonStatus) {
storeName = name.getText();
storeSurname = surname.getText();
storeAge = Integer.parseInt(textAge.getText());
person.add(new Person(name, surname, age));
JOptionPane.showInputDialog(person.toString());
}
}
}
- Do poprawy, próbujesz wziąć text z JLabel zamiast JTextField
- Po kiego tworzysz nowe zmienne jak ich nie uzywasz? mówie o
storeName, storeSurname, storeAge
- Jak już tworzysz te zmienne to je przekaż do konstruktora
person.add(new Person(storeName, storeSurname, storeAge));
- Te * default persons* to wywal gdzie indziej, bo lista się będzie powiększać i powiększać...
- w klasie Person wygeneruj
toString()
, bo zaraz będzie następny błąd :P
a co do błędu
private ArrayList<Person> person;
brakuje new ArrayList<>();
edytowany 1x, ostatnio: toJaMichal

- Rejestracja:ponad 7 lat
- Ostatnio:około 7 lat
- Postów:39
0
@toJaMichal dziękuje za pomoc:)
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.