2016-10-02 2 views
-1

Я хочу создать список элементов с помощью ввода пользователем. Можно ли непосредственно сохранить элемент в списке, или мне нужно создать ссылку? Я нашел, как составить список готовых переменных, но я хочу создать те переменные с пользовательским вводом.Как создать список новых элементов?

Целью моего проекта является сохранение набора данных и их последующее напоминание. Сначала я понимаю концепцию списков. Поэтому я не думаю, что полезно скопировать мой код в данный момент.

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

Вы знаете, как получить информацию от пользователя? – OsamaKhalid

+0

Да, я могу создать элемент и определить атрибуты с пользовательским вводом. Теперь я хотел бы сохранить этот элемент в списке. –

+0

Что вы подразумеваете под элементом? Это просто взять ввод и сохранить его в Arraylist – OsamaKhalid

ответ

0

Надеется, что это помогает

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

Вот как вы можете использовать список. Добавьте список элементов SpawnPoints. – OsamaKhalid

+0

Я хочу поблагодарить вас за ваше терпение Усама, это именно то, что я хотел узнать. Просто чтобы убедиться, что < > означает, что он содержит элемент? Я не уверен, что представляет собой такой синтаксис. –

+0

Тип элементов, которые будет хранить ArrayList. – OsamaKhalid

0

Вы можете попробовать добавить этот код:

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

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

Я хочу проверить, понимаю ли я эту строку кода. Имеет ли значение < > значение строки в качестве аргумента. Поэтому, если spawnpoint не называется «exit», spawnpoint сохраняется в списке. –