Dane ze scannera do listy

Odpowiedz Nowy wątek
2016-08-09 01:51
0
    public void personalInformation(){
 
        Scanner hp = new Scanner(System.in);
        System.out.println("Type initial date:");
        String initialDate = hp.nextLine();
        System.out.println("Type final date:");
        String finalDate = hp.nextLine();
        System.out.println("Type your first name and last name:");
        String name = hp.nextLine();
        System.out.print("Type your driving licence ID:");
        int drivingLicenceID = hp.nextInt();

Jak te dane ze scannera wrzucić do arraylisty?

Chciałbym żeby to tak wyglądało:

1. data, data, kowalski, 1235612
2. data, data, krokiet, 4124124

szynka, krokiet, pięc bażantów, dziś jest piątek, nie ma żartów
edytowany 1x, ostatnio: furious programming, 2016-08-09 03:28

Pozostało 580 znaków

2016-08-09 07:04
0

Stwórz nowa klasę zawierająca te dane.
A w Twojej klasie twórz obiekt, skanerem czytaj dane i ustawiaj je setterem, a do listy dodawaj już gotowy obiekt.

edytowany 1x, ostatnio: GigaBajt, 2016-08-09 07:07

Pozostało 580 znaków

2016-08-09 13:01
0

Ruszyłem trochę do przodu, ale nie wiem czy we właściwym kierunku? :)

</code></pre>
<p>import java.io.IOException;<br />
import java.util.*;</p>
<p>public class Launcher{</p>
<pre><code>public static void main(String[] args) throws IOException {
 
    ArrayList<Launcher> reservationlist = new ArrayList<>();
    reservationlist.add("2016-08-09", "2016-08-20", "Pan Krokiet", "125125"); // czerwona linijka 
 
    Helper.welcomeMessage();
    char choice, ignore;
 
    for (;;) {
        do {
            Helper.showMenu();
 
            choice = (char) System.in.read();
            do {
                ignore = (char) System.in.read();
            } while (ignore != '\n');
        } while (choice < '1' | choice > '5' & choice != 'q');
        if (choice == 'q') {
            break;
        }
 
       Orders order = new Orders();
 
        switch (choice) {
            case '1': // Get information about company
                Helper.aboutUs();
                break;
            case '2': // List of our motorcycles (enum)
                System.out.println("Price per 1 day:  PREMIUM 500zl, GOLD 500zl, BASIC 500zl");
                for (Prices pricelist : Prices.values())
                    System.out.printf("%s\t%s\n", pricelist.getTitle(), pricelist);
                break;
            case '3': // Make a reservation
                Scanner hp = new Scanner(System.in);
                Orders reservation = new Orders();
 
                System.out.println("Type initial date:");
                reservation.initialDate = hp.next();
 
                System.out.println("Type final date:");
                reservation.finalDate = hp.next();
 
                System.out.println("Type your first name and last name:");
                reservation.name = hp.next();
 
                System.out.print("Type your driving licence ID:");
                reservation.drivingLicenceID = hp.next();
 
                System.out.println("\n\n Reservation completed " + reservation.name + "\n Thanks for your reservation\n");
                break;
 
                reservationlist.add(reservation.initialDate, reservation.finalDate, reservation.name, reservation.drivingLicenceID));  // czerwona linijka 
 
            case '4': // Check availability of motorcycles
                System.out.println("");
                break;
            case '5': // Contact with us
                Helper.contact();
                break;
        }

```java
public class Orders {

        String initialDate;
        String finalDate;
        String name;
        String drivingLicenceID;

    public Orders(String initialDate, String finalDate, String name, String drivingLicenceID) {
        this.initialDate = initialDate;
        this.finalDate = finalDate;
        this.name = name;
        this.drivingLicenceID = drivingLicenceID;
    }

    public Orders() {}

    @Override
    public String toString() {
        return "Orders{" +
                "initialDate='" + initialDate + '\'' +
                ", finalDate='" + finalDate + '\'' +
                ", name='" + name + '\'' +
                ", drivingLicenceID=" + drivingLicenceID +
                '}';
    }

    public void setInitialDate(String initialDate) {
        this.initialDate = initialDate;
    }
    public void setFinalDate(String finalDate) {
        this.finalDate = finalDate;
    }
    public void setName(String name) {
        this.name = name;
    }
    public void setDrivingLicenceID(String drivingLicenceID) {
        this.drivingLicenceID = drivingLicenceID;
    }
}

szynka, krokiet, pięc bażantów, dziś jest piątek, nie ma żartów

Pozostało 580 znaków

2016-08-10 12:04
1

Stworzyłeś listę chyba do przechowywania obiektów klasy Orders, więc dlaczego robisz coś takiego?

 
ArrayList<Launcher> reservationlist = new ArrayList<>(); 
reservationlist.add("2016-08-09", "2016-08-20", "Pan Krokiet", "125125");

Pozostało 580 znaków

2016-08-10 13:17
Krzywy Szczur
1

Jak dla mnie powinien działać na obiektach w tej liście:

 ArrayList<Orders> reservationlist = new ArrayList<Orders>(); 
reservationlist.add(new Orders("2016-08-09", "2016-08-20", "Pan Krokiet", "125125"));

Później wyciągasz obiekty i możesz na nich wykonywać metody i pracować na danych

Pozostało 580 znaków

2016-08-12 12:24
0

Moja odpowiedz z tematu:
Funkcja Scanner do kilku obiektów.
może tobie pomóc.
Dane są inne, ale odczytywane za pomocą Scanner, przypisywane do obiektu, który jest następnie dodawany do ArrayList.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0