i am looking to pass values entered in my Textfields into an array list, although i cannot seem to do this. i am able to view the details which have been entered in the console when using
System.out.println(houses.get(1).getHouseNumber())
but this does not post the newly entered values into the arraylist in my code and i can not understand why.
ArrayList and ActionListener code
final ArrayList<House> houses = new ArrayList<House>();
houses.add(new House());
button.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e) {
House house = new House();
house.setHouseNumber(houseNumber.getText());
house.setStreetName(streetName.getText());
house.setTown(town.getText());
house.setPostcode(postcode.getText());
houses.add(house);
System.out.println(houses.get(1).getHouseNumber());
System.out.println(houses.get(1).getStreetName());
System.out.println(houses.get(1).getTown());
System.out.println(houses.get(1).getPostcode());
}
});
GUI Code
public void go(){
frame = new JFrame();
panel = new JPanel();
HouseNumberLabel = new JLabel ("House Number");
houseNumber = new JTextField ("");
StreetNameLabel = new JLabel ("Street name");
streetName = new JTextField ("");
TownLabel = new JLabel ("Town");
town = new JTextField ("");
PostcodeLabel = new JLabel ("Postcode");
postcode = new JTextField ("");
BedsLabel = new JLabel ("Number of beds");
beds = new JTextField ("");
PriceLabel = new JLabel ("Price (£)");
price = new JTextField ("");
TypeLabel = new JLabel ("Building Type");
type = new JTextField ("");
button = new JButton("Submit");
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
frame.getContentPane().add(panel);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300,300);
frame.setVisible(true)
House Class code
class House {
private String houseNumber;
private String streetName;
private String town;
private String postcode;
public String getHouseNumber() {
return houseNumber;
}
public void setHouseNumber(String houseNumber) {
this.houseNumber = houseNumber;
}