list cannot be resolved, Java
Hejsan!
Jag håller på att roa mig med metoder i Java. Jag har för vana att skriva allt för mycket kod i main-klassen och tänkte försöka ändra på det.
Nu har jag kört fast lite när jag implementerar en arrayList i koden. Jag får meddelandet "list cannot be resolved" i konstruktorn. Jag tror jag förstår varför, men jag kan inte komma på hur jag ska lösa det på bäst sätt.
import java.util.*;
public class Head {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String fname, lname;
int choice;
ArrayList<People>list = new ArrayList<>();
People p1 = new People("Mia", "Wallace", "1111");
People p2 = new People("Marcellus", "Wallace", "2222");
list.add(p1);
list.add(p2);
System.out.println("Welcome");
System.out.println("1) Add person \n2) Last name \n3) Print list");
choice = scan.nextInt();
switch(choice){
case 1:
People.walk(); //calling the method
break;
case 2:
People.run();
break;
case 3:
People.crawl();
break;
}
}
}
och...
import java.util.*;
public class People {
static Scanner scan = new Scanner(System.in);
private static String fname;
private static String lname;
private static String dob;
public People(String fname, String lname, String dob){
this.fname = fname;
this.lname = lname;
this.dob = dob;
}
public String getFname(){
return fname;
}
public String getLname(){
return lname;
}
public String getDob(){
return dob;
}
public static void walk(){
System.out.println("Enter first name: ");
fname = scan.next();
System.out.println("Enter last name: ");
lname = scan.next();
System.out.println("Enter dob: ");
dob = scan.next();
list.add(new People(fname, lname, dob)); //list cannot be resolved
}
public static void run(){
System.out.println("Remove people");
}
public static void crawl(){
int peoplenumber = 0;
System.out.println("\nNumber of peoples: " + list.size()); //list cannot be resolved
for(People p : list){ //list cannot be resolved
peoplenumber += 1;
System.out.println("#" + peoplenumber + "\n" + p.toString());
}
}
public String toString(){
return "First name: " + this.fname + "\nLast name: " + this.lname + "\nDateOfBirth: " + this.dob;
}
}
Tack så mycket för att du tog dig tid