2017-04-08 17 views
0

Dieser Code funktioniert gut, aber ich muss in der Lage sein, eine Art von Auto aus einer anderen Klasse hinzufügen, indem Sie eine Methode oder etwas aufrufen, ich bin wirklich neu in Java und ich denke es ist wirklich einfache Lösung, aber ich habe mich umgesehen und ein paar Dinge ohne Glück versucht. So könnte zum Beispiel eine Klasse namens addCar auf die verknüpfte Liste entweder in der Hauptmethode zugreifen oder wenn ich die Liste in eine separate Klasse einfügen müsste.java verknüpfte Liste Zugriff von einer anderen Klasse

public static void main(String[] args) { 
    LinkedList<String> cars; 
    cars = new LinkedList<>(); 
    cars.add("SUV"); 
    Iterator<String> itr = cars.iterator(); 
    while (itr.hasNext()) { 
     System.out.println(itr.next());} 
    } 
} 

Antwort

0

Sie haben die Car Klasse erstellen können als unten dargestellt:

public class Car { 

    private LinkedList<String> cars = new LinkedList<>(); 

    public void addCar(String car) { 
     cars.add(car); 
    } 

    public Iterator<String> iterator() { 
     return cars.iterator(); 
    } 
} 

Ein wichtiger Punkt ist, dass aus dem obigen Code, Sie habe definiert, was ein Car ist, aber Sie haben keine Autos, d. h. Auto-Objekte erstellt.

Also, wenn Sie ein Auto in den main() zu erstellen, müssen Sie new Operator (wie new Car()) und Zugriff auf die Methoden (wie addCar etc ..) des Auto-Objekts verwenden, wie unten dargestellt:

public class YourTestClass { 

    public static void main(String[] args) { 
     Car car = new Car(); 
     car. addCar("SUV"); 
     Iterator<String> itr = car.iterator(); 
     while (itr.hasNext()) { 
      System.out.println(itr.next());} 
     } 
    } 
} 
0

Sie können LinkedList<String> cars als Mitglied der Klasse deklarieren, definieren dann eine Methode wo innerhalb Sie die Zeichenfolge hinzufügen, können Sie als Parameter wie

public void addCar(String car){ 
    cars.add(car); 
} 
0

Sie können etwas tun:

import java.util.LinkedList; 

public class Test { 
    static class SomeClass { 
     LinkedList<String> cars; 

     public SomeClass() { 
      cars = new LinkedList<>(); 
      cars.add("SUV"); 
     } 

     public void addType(String type) { 
      cars.add(type); 
     } 

     public LinkedList<String> getCars() { 
      return cars; 
     } 
    } 

    public static void main(String[] args) { 
     SomeClass someClass = new SomeClass(); 
     someClass.addType("Sedan"); 
     //or 
     someClass.getCars().add("Hatchback"); 
     System.out.println(someClass.getCars()); 
     //[SUV, Sedan, Hatchback] 
    } 
} 
Verwandte Themen