Avatar billede axel Nybegynder
15. marts 2002 - 09:34 Der er 12 kommentarer og
1 løsning

DAY_OF_WEEK_IN_MONTH

Det er igen Calendar der driller :o) Jeg skal finde ud af hvilken dag på ugen den første i måneden var. Altså hvilken ugedag var den 1. marts f.eks. Kan det gøres med DAY_OF_WEEK_IN_MONTH ??
Avatar billede codemon Nybegynder
15. marts 2002 - 10:47 #1
1. marts 2002:
  mitCalendarObj.set(2002, 3, 1);
ugedag (som du selv foreslår)
  int ugedag = mitCalendarObj.get(Calendar.DAY_OF_WEEK_IN_MONTH);
Avatar billede codemon Nybegynder
15. marts 2002 - 10:48 #2
ikke DAY_OF_WEEK_IN_MONTH men DAY_OF_WEEK
Avatar billede axel Nybegynder
15. marts 2002 - 10:51 #3
hvis ikke jeg selv setter kalenderen, hvad er det så for et tal jeg får retur. Lige nu er det et 3. tal, men hvor kommer det fra?
Avatar billede axel Nybegynder
15. marts 2002 - 10:53 #4
hvis nu jeg trækker nogle måneder fra min kalender, hvilket jeg gør hele tiden, hvordan finder jeg så månedens første ugedag ????
Avatar billede codemon Nybegynder
15. marts 2002 - 12:29 #5
Hvad mener du med et 3. tal?

mitCalendarObj.get(Calendar.DAY_OF_WEEK) giver ugedagen for mitCalendarObj
fx
mitCalendarObj.set(2002, 3, 1);
ugedag = mitCalendarObj.get(Calendar.DAY_OF_WEEK_IN_MONTH); // ugedag 1.marts 2002
mitCalendarObj.add(Calendar.MONTH, -1);
ugedag = mitCalendarObj.get(Calendar.DAY_OF_WEEK_IN_MONTH); // ugedag 1.februar 2002
Avatar billede nielsbrinch Nybegynder
15. marts 2002 - 12:36 #6
Jeg tror han mener et 3-tal
Avatar billede codemon Nybegynder
15. marts 2002 - 12:42 #7
Hvis det er tilfældet så er det fordi tallet svarer til Calendar's definerede konstanter. MONDAY...

en "design-venlig" måde at skrive i tekst hvilken ugedag det kan gøres ved fx:
String[] ugedag = new String[7];
ugedag[Calendar.MONDAY] = "Mandag";
osv.

det forudsætter at konstanterne er defineret fra 0-6, ellers kan du jo bare lave array'et lidt større (pænt eller ej ?:).
Avatar billede axel Nybegynder
15. marts 2002 - 13:03 #8
jeg har løst det lidt anderledes, men tak og point til codemon for hjælpen :)
Avatar billede disky Nybegynder
15. marts 2002 - 13:23 #9
codemon:
Nix ikke noget med hardcoding af dag navne osv.

Hvorfor ikke bruge Java's indbyggede localizing til det ?

Axel: Brug SimpleDateFormat til at formattere osv som du ønsker. Brug den constructor der tager en parse string og en localize som parameter

Så laver java det selv for dig.
Avatar billede codemon Nybegynder
15. marts 2002 - 23:01 #10
codemon takker axel for pointene og bøjer sig i støvet for den mægtige disky, "rigtigt" design hardkoder ikke.

axel hvis den lidt anderledes løsning er smart så er du flink hvis du offentliggør den.
Avatar billede disky Nybegynder
15. marts 2002 - 23:15 #11
codemon:
Hvad er det lige du forsøger at sige til mig ?

ugedag[Calendar.MONDAY] = "Mandag";

Er at hardcode Mandag ind i et array, pludselig skal dit program bruges på tysk og så skal alt rekompiles og ændres.
Avatar billede codemon Nybegynder
15. marts 2002 - 23:29 #12
disky jeg siger at du har helt ret, ingen diskussion om det.
Avatar billede disky Nybegynder
15. marts 2002 - 23:47 #13
:-)

Jeg synes bare din 'mægtig' sætning var svagt krypteret.

God weekend :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester