# datum vergleich



## Guest (10. Dez 2004)

hallo,

ich möchte gerne ein datum mit einem anderen vergleichen. beide haben die form dd.mm.yyyy;
was muss ich machen bzw. gibt es dafür einfache mehtoden. mein datum liegt momentan in einen string. und ich kenne mich in sachen datum uhrzeit noch nicht wirklich aus. ich kenne gregoriancalendar und date. sind mir beide etwas suspekt. kann mir aber über ein buch, dass ich habe darüber informieren.

danke


----------



## foobar (10. Dez 2004)

http://java.sun.com/j2se/1.4.2/docs/api/java/util/Date.html#compareTo(java.util.Date)


----------



## Guest (10. Dez 2004)

danke,

aber wie lege ich ein date-format an. geht das wie:
String hallo = null;   ??


----------



## foobar (10. Dez 2004)

> aber wie lege ich ein date-format an. geht das wie:


Meinst du wie man Date erzeugt? Genau so wie jedes andere Objekte auch.


```
Date d = new Date();
```

Um aus einem String ein Datum zu erzeugen, kannst du DateFormat verwenden:


```
Date d = DateFormat.getDataImstance().parse("1.1.2000");
```


----------



## foobar (10. Dez 2004)

Ansonsten guck mal hier http://www.javaalmanac.com/egs/java.util/CompDates.html


----------



## Guest (10. Dez 2004)

und wie bekomme ich einen string in dieses objekt?


----------



## Sindbad1983 (10. Dez 2004)

wenn ich jetzt 2 Daten mit der compareTo-Methode vergleichen möchte...


```
class Datum implements Comparable{

	int hrs;
	int min;
	int sec;
	

	public Datum(int hrs,int min,int sec){
		this.hrs=hrs;
		this.min=min;
		this.sec=sec;
	}

	public int compareTo(Object obj){

		//??????
		
		if(result==0){
			return 0;
		}
		else{
			return result;
		}
		
		return 0;

	}



	public String toString(){

	String s="";

	s=s+hrs+"Stunden"+min+"Minuten"+sec+"Sekunden";

	return s;

	}


}
```

wie muss ich dann die compareTo-Methode implementieren????

bzw. die main-Methode??


```
class DatumTest{

public static void main(String [] args){

	Datum dat1=new Datum(12,34,56);
	Datum dat2=new Datum(12,34,57);


    //??? 

	System.out.println(Datum.dat1.compareTo(dat2).toString());
}
}
```


Kann mir da jemand helfen bitte?


----------



## foobar (10. Dez 2004)

Mit Hilfe der Methode parse.
RTFM


----------



## foobar (10. Dez 2004)

Warum willst du eine eigenen Date-Klasse erstellen? Date implementiert bereits Comparable.


----------



## Sindbad1983 (10. Dez 2004)

naja..nur zur Übung..
wie würd das da gehn?
ich werds mit Date auch gleich probiern!


----------



## foobar (10. Dez 2004)

Entweder über die toString Methode

```
public int compareTo(Object obj)
{
   if (obj instanceof Datum)
    {
       return this.toString().compareTo( obj.toString() );
    }
   else return 0;
}
```
oder du vergleichst alle Member miteinander und gibst dann das entsprechende Ergebnis zurück.


----------

