# Daten in Arraylist und hashmap eintragen und Vergleichen



## Rey (3. Nov 2008)

Wir sollen einmal eine ArrayList verwenden und einmal eine Hashmap.

In beide sollen einmal eine Auftragsnummer kommen und ein Lieferdatum. In eine der Listen kommt quasi ein SOLL Lieferdatum und in die andere Liste das tatsächliche Lieferdatum.

Nun sollen die beiden Lieferdaten verglichen werden und falls eine Differenz zwischen SOLL und IST Lieferdatum besteht, soll diese Differenz ausgegeben werden.

Das Auftragsdatum wird nur benötigt um die beiden Lieferdaten zu vergleichen falls mehrere Aufträge bestehen.

Wir sollen hierbei mit dem Gregorian Calendar arbeiten.


1. ich weiß nicht wie ich mehrere Daten in eine Arraylist bzw. gleichzeitig in eine hashmap eintrage
2. Ich bekomme es nicht ein mal hin die eingabe felder sin gemäß zu formatieren
das ist mein bisheriger ansatz

```
import javax.*;
import java.lang.*;
public class Sonstiges {

	public static void main(String args[])
	 {
		String Bestellnummer = javax.swing.JFormattedTextField.AbstractFormatter("###-#######-#######").JOptionPane.showInputDialog("Bitte geben Sie die Bestellnummer ein!");
		 int BestellNr = Integer.parseInt(Bestellnummer);
		 

		String Lieferdatum= javax.swing.JFormattedTextField.AbstractFormatter("##.##.####").JOptionPane.showInputDialog("Bitte geben Sie ein Lieferdatum ein!");
		 int Liefertermin= Integer.parseInt(Lieferdatum);
		 
		 System.out.println("Die BEstellnummer Lautet: "+BestellNr+ "\n Der Artikel wird am "+Liefertermin+" geliefert");
	 }
}
```


----------



## Gast (4. Nov 2008)

Das hört sich ja ziemlich nach WIB/Schreier an ^^


----------



## Landei (4. Nov 2008)

1) Wurde irgendwas von Swing gesagt? Wenn nicht, lass es lieber, was du da tust sieht grauenhaft aus. Konsole benutzen, System.in zum Einlesen von Strings (oder Scanner, wenn du Zahlen brauchst).
2) Es heißt Liefer*datum*, nicht Liefer*string* :-D 
Dazu musst du aus einem Eingabestring einen Calendar machen.
SimpleDateFormat.parse liefert erst mal ein Date
new GregorianCalendar (oder Calendar.getInstance()) liefert eine Calendar-Instanz und an dem Calendar kannst du dann das Datum mit setTime(Date) setzen (frag bei Datumsen in Java bitte nicht nach Logik)


----------

