2016-10-02 5 views
-1

Ich möchte eine Liste von Elementen erstellen, die mit Benutzereingaben erstellt werden. Kann ich ein Element direkt in einer Liste speichern oder muss ich eine Referenz erstellen? Ich habe herausgefunden, wie man eine Liste von vorgefertigten Variablen erstellt, aber ich möchte te Variablen mit Benutzereingaben erstellen.Wie erstelle ich eine Liste neuer Elemente?

Das Ziel meines Projekts ist es, Daten zu speichern und sie zu einem späteren Zeitpunkt wieder aufzurufen. Zuerst verstehe ich das Konzept der Listen. Daher halte ich es nicht für sinnvoll, meinen Code in diesem Moment zu kopieren.

import java.util.*; 

public class Database { 

    public Database() { 

    } 

    public static int numberOfSpawnpoints = 0; 
    static Scanner userInput = new Scanner(System.in); 

    public static void main(String[] args) { 

     System.out.println("Add a new spawnpoint.\n"); 

     System.out.println("State the name of this spawnpoint: "); 


     Spawnpoints Sp1 = new Spawnpoints(getSpawnName()); 

     System.out.println("Name: " + Sp1.getSpawnName()); 
     System.out.println("Location: " + Sp1.getLocation()); 
     System.out.println("Pokemon: " + Sp1.getPokemon()); 
     System.out.println("Spawntime: " + Sp1.getSpawntime()); 

     System.out.println("The pokemon is currently spawned: " + Sp1.isSpawned()); 

     numberOfSpawnpoints++; 

    } 

    public static String spawnName; 

    public static String getSpawnName() { 

     spawnName = userInput.next(); 
     return spawnName; 
    } 

    public void setSpawnName(String spawnName) { 

     Database.spawnName = spawnName; 
    } 
} 
+0

Sie wissen, wie eine Eingabe von Benutzer zu bekommen? – OsamaKhalid

+0

Ja, ich kann ein Element erstellen und Attribute mit Benutzereingaben definieren. Jetzt möchte ich dieses Element in einer Liste speichern. –

+0

Was meinst du mit make a element? Es ist einfach, nehmen Sie die Eingabe und speichern Sie es in einem Arraylist – OsamaKhalid

Antwort

0

Hope this

hilft
import java.util.*; 

public class Database { 

public Database() { 

} 

public static int numberOfSpawnpoints = 0; 
static Scanner userInput = new Scanner(System.in); 

public static void main(String[] args) { 

    System.out.println("Add a new spawnpoint.\n"); 

    System.out.println("State the name of this spawnpoint: "); 
    ArrayList<Spawnpoints> SPlist = new ArrayList<Spawnpoints>(); 

    SPlist.add(new Spawnpoints(getSpawnName())); 
    // the above line will create an object of Spawnpoints and store it in list 

    System.out.println("Name: " + SPlist.get[0].getSpawnName()); 
    System.out.println("Location: " + SPlist.get[0].getLocation()); 
    System.out.println("Pokemon: " + SPlist.get[0].getPokemon()); 
    System.out.println("Spawntime: " + SPlist.get[0].getSpawntime()); 

    System.out.println("The pokemon is currently spawned: " + SPlist.get[0].isSpawned()); 

    numberOfSpawnpoints++; 

} 

public static String spawnName; 

public static String getSpawnName() { 

    spawnName = userInput.next(); 
    return spawnName; 
} 

public void setSpawnName(String spawnName) { 

    Database.spawnName = spawnName; 
} 

} 
+0

So können Sie die Liste verwenden. Fügen Sie so viele Elemente wie das SpawnPoints-Element hinzu, um es aufzulisten. – OsamaKhalid

+0

Ich möchte Ihnen für Ihre Geduld danken Osama, das ist genau das, was ich lernen wollte. Nur um sicher zu sein, bedeutet die < >, dass es ein Element enthält? Ich bin mir nicht sicher, was diese Art von Syntax darstellt. –

+0

Art der Elemente, die ArrayList speichert. – OsamaKhalid

0

Sie können versuchen, diesen Code hinzufügen:

ArrayList<String> items = new ArrayList<String>(); 

while (!userInput.equals("exit")){ 
    items.add(userInput.next()); 
} 
+0

Ich möchte überprüfen, ob ich diese Codezeile verstehe. Ist die < > bedeutet, dass es eine Zeichenfolge als Argumente verwendet. Wenn ein Spawnpunkt nicht "Exit" genannt wird, wird der Spawnpoint in einer Liste gespeichert. –

Verwandte Themen