java - Printing 1D Array -


i trying print one-dimensional array class. problem print statement prints same elements.

for example:

enter total number of customers: 3

name: jessica
age: 22
gender: female


name: john
age: 28
gender: male


name: mike
age: 35
gender: male

the outputs program same elements of last customers.

name-------------age-----------gender

mike                 35                  male

mike                 35                  male

mike                 35                  male

instead want like:

name-------------age-----------gender

jessica             22                  female

john                 28                  male

mike                 35                  male

i not know part missing or doing incorrectly. i'd appreciate feedback!

import java.util.scanner; public class customer1234 { public static void main(string[] args) {      scanner input = new scanner(system.in);     int x;     system.out.print("enter total number of customers: ");      x = input.nextint();      customer [] customers = new customer[x];        customer.data(customers);      system.out.println("name" + "-------------"+ "age" +"-----------" +"gender");     for(int = 0; <customers.length; i++){          system.out.println(customers[i].tostring());     }    }  static class customer{      private static string name;     private static int age;     private static string gender;       public customer(string name, int age, string gender){          customer.setname(name);         customer.setage(age);         customer.setgender(gender);      }       public static void data(customer [] customers){         scanner input = new scanner(system.in);          for(int = 0; < customers.length; i++){              system.out.print("name: ");             setname(input.next());              system.out.print("age: ");             setage(input.nextint());              system.out.print("gender: ");             setgender(input.next());              customers[i] = new customer( getname(), getage(), getgender());         }      }       public static string getname() {         return name;     }      public static void setname(string name) {         customer.name = name;     }      public static int getage() {         return age;     }      public static void setage(int age) {         customer.age = age;     }      public static string getgender() {         return gender;     }      public static void setgender(string gender) {         customer.gender= gender;     }          public string tostring()     {         string result;         result = name +"         "+ age +"            "+ gender;         return result;     }    } } 

your problem use of static everywhere in customer class. rewrite as:

 private string name;     private int age;     private string gender;       public customer(string name, int age, string gender){          this.name = name;         this.age = age;        this.gender = gender;      }       public static void data(customer [] customers){         scanner input = new scanner(system.in);          for(int = 0; < customers.length; i++){              system.out.print("name: ");             setname(input.next());              system.out.print("age: ");             setage(input.nextint());              system.out.print("gender: ");             setgender(input.next());              customers[i] = new customer( getname(), getage(), getgender());         }      }       public string getname() {         return name;     }      public void setname(string name) {         this.name = name;     }      public int getage() {         return age;     }      public void setage(int age) {         this.age = age;     }      public string getgender() {         return gender;     }      public void setgender(string gender) {         this.gender= gender;     }          public string tostring()     {         string result;         result = name +"         "+ age +"            "+ gender;         return result;     }    } 

Comments

Popular posts from this blog

user interface - How to replace the Python logo in a Tkinter-based Python GUI app? -

objective c - Greedy NSProgressIndicator Allocation -

how to set an OCR language in Google Drive -