Hallo,
ich habe ein kleines Problem mit den Datums berechnungen und muss gestehen das ich bei dem Calendar Objekt (Java Doc) nocht nicht ganz durchblicke...
Bei dem Projekt geht es um Lotto Zahlen und ich möchte nur eine Methode die herausfindet ob an dem Tag eine Ziehung ist oder nicht.
Leider gibt sie alle möglichen Daten zurück jedoch nicht die Tage an denen eine Ziehung ist.
Ein teil der Ausgabe:
14.2.1991
15.2.1991
16.2.1991
17.2.1991
18.2.1991
19.2.1991
20.2.1991
21.2.1991
22.2.1991
23.2.1991
24.2.1991
25.2.1991
26.2.1991
27.2.1991
28.2.1991
29.2.1991
30.2.1991
31.2.1991
1.3.1991
2.3.1991
3.3.1991
4.3.1991
5.3.1991
6.3.1991
7.3.1991
8.3.1991
9.3.1991
10.3.1991
11.3.1991
12.3.1991
13.3.1991
14.3.1991
15.3.1991
16.3.1991
17.3.1991
18.3.1991
19.3.1991
20.3.1991
21.3.1991
22.3.1991
23.3.1991
24.3.1991
25.3.1991
26.3.1991
27.3.1991
28.3.1991
29.3.1991
30.3.1991
1.4.1991
2.4.1991
3.4.1991
4.4.1991
5.4.1991
6.4.1991
7.4.1991
8.4.1991
9.4.1991
10.4.1991
11.4.1991
12.4.1991
13.4.1991
14.4.1991
15.4.1991
16.4.1991
17.4.1991
18.4.1991
19.4.1991
20.4.1991
21.4.1991
22.4.1991
23.4.1991
24.4.1991
25.4.1991
Methoden aufruf:
Methode die Probleme macht:
Die komplette Klasse:
Was mache ich falsch??
ich habe ein kleines Problem mit den Datums berechnungen und muss gestehen das ich bei dem Calendar Objekt (Java Doc) nocht nicht ganz durchblicke...
Bei dem Projekt geht es um Lotto Zahlen und ich möchte nur eine Methode die herausfindet ob an dem Tag eine Ziehung ist oder nicht.
Leider gibt sie alle möglichen Daten zurück jedoch nicht die Tage an denen eine Ziehung ist.
Ein teil der Ausgabe:
14.2.1991
15.2.1991
16.2.1991
17.2.1991
18.2.1991
19.2.1991
20.2.1991
21.2.1991
22.2.1991
23.2.1991
24.2.1991
25.2.1991
26.2.1991
27.2.1991
28.2.1991
29.2.1991
30.2.1991
31.2.1991
1.3.1991
2.3.1991
3.3.1991
4.3.1991
5.3.1991
6.3.1991
7.3.1991
8.3.1991
9.3.1991
10.3.1991
11.3.1991
12.3.1991
13.3.1991
14.3.1991
15.3.1991
16.3.1991
17.3.1991
18.3.1991
19.3.1991
20.3.1991
21.3.1991
22.3.1991
23.3.1991
24.3.1991
25.3.1991
26.3.1991
27.3.1991
28.3.1991
29.3.1991
30.3.1991
1.4.1991
2.4.1991
3.4.1991
4.4.1991
5.4.1991
6.4.1991
7.4.1991
8.4.1991
9.4.1991
10.4.1991
11.4.1991
12.4.1991
13.4.1991
14.4.1991
15.4.1991
16.4.1991
17.4.1991
18.4.1991
19.4.1991
20.4.1991
21.4.1991
22.4.1991
23.4.1991
24.4.1991
25.4.1991
Methoden aufruf:
Java:
do
{
System.out.print("\n\n");
} while(this.calc_dates.next());
Methode die Probleme macht:
Java:
/*
* Move the now attribute
* returns false otherwise
*/
public boolean next()
{
Calendar present = Calendar.getInstance();
for (int i = 0; i <= 6; i++)
{
System.out.println(this.now.get(Calendar.DATE)+"."+this.now.get(Calendar.MONTH)+"."+this.now.get(Calendar.YEAR));
this.now.add(Calendar.DATE, 1);
if (this.now.after(present))
{
return false;
}
if (this.now.get(Calendar.DAY_OF_WEEK) == this.now.SUNDAY)
{
return true;
}
if (this.mi && this.now.get(Calendar.DAY_OF_WEEK) == this.now.WEDNESDAY)
{
return true;
}
//System.out.println(this.now.DAY_OF_WEEK);
//System.out.println(this.now.SUNDAY);
}
return false;
}
Die komplette Klasse:
Java:
package lotto;
import java.util.Calendar;
import java.util.GregorianCalendar;
public class calc_dates
{
private Calendar now = Calendar.getInstance();
public boolean mi = false;
public boolean zz = false;
public boolean sz = false;
public calc_dates()
{
Calendar c = GregorianCalendar.getInstance();
c.set(1955, 10, 9);
this.set_date(c);
}
public calc_dates(Calendar now)
{
this.set_date(now);
}
public calc_dates(int year, int month, int day)
{
Calendar c = GregorianCalendar.getInstance();
c.set(year, month, day);
this.set_date(c);
}
public void set_date(Calendar now)
{
this.now = now;
Calendar compare_date = Calendar.getInstance();
compare_date.set(1956, 06, 17);
if (this.now.after(compare_date) || this.now.equals(compare_date))
{
this.zz = true;
}
compare_date.set(1986, 04, 19);
if (this.now.after(compare_date) || this.now.equals(compare_date))
{
System.out.println("mi is true jetzt!!!!!!!!!!!!");
this.mi = true;
}
compare_date.set(1991, 12, 7);
if (this.now.after(compare_date) || this.now.equals(compare_date))
{
this.sz = true;
}
}
/*
* Move the now attribute
* returns false otherwise
*/
public boolean next()
{
Calendar present = Calendar.getInstance();
for (int i = 0; i <= 6; i++)
{
System.out.println(this.now.get(Calendar.DATE)+"."+this.now.get(Calendar.MONTH)+"."+this.now.get(Calendar.YEAR));
this.now.add(Calendar.DATE, 1);
if (this.now.after(present))
{
return false;
}
if (this.now.get(Calendar.DAY_OF_WEEK) == this.now.SUNDAY)
{
return true;
}
if (this.mi && this.now.get(Calendar.DAY_OF_WEEK) == this.now.WEDNESDAY)
{
return true;
}
//System.out.println(this.now.DAY_OF_WEEK);
//System.out.println(this.now.SUNDAY);
}
return false;
}
public Calendar get_date()
{
return this.now;
}
public String get_date(boolean us_format)
{
if (us_format)
{
return this.now.get(Calendar.YEAR)+"-"+this.now.get(Calendar.MONTH)+"-"+this.now.get(Calendar.DATE);
}
else
{
return this.now.get(Calendar.DATE)+"."+this.now.get(Calendar.MONTH)+"."+this.now.get(Calendar.YEAR);
}
}
}
Was mache ich falsch??