|
| Et problem med at tildele en værdi til en ~ Fra : Dennis Olesen |
Dato : 29-08-04 17:12 |
|
Jeg har skrevet følgende kode men det dur ikke. Er der nogen som kan hjælpe
mig lidt vidre.
Problemmet ligger i metoden calc. Min første linie skriver BlueJ at der
mangler en ) men der kan også nemt være noget andet galt. Jeg kan bare ikke
se hvad der er problemmet.
Beskrivelse af koden:
I metoden calc prøver jeg at tildele int daynumberofmonth en værdi som
passer til måneden ( monthname )
MVH
Dennis Olesen
private int daynumberofmonth
private int daynumberofweek;
private String dayofweek;
public void first_day_of_month(String monthname)
{
if (monthname == "January")
day = 4;
if (monthname == "February")
day = 0;
if (monthname == "March")
day = 1;
if (monthname == "April")
day = 4;
if (monthname == "May")
day = 6;
if (monthname == "June")
day = 2;
if (monthname == "July")
day = 4;
if (monthname == "August")
day = 0;
if (monthname == "September")
day = 3;
if (monthname == "October")
day = 5;
if (monthname == "November")
day = 1;
if (monthname == "December")
day = 3;
}
public String calc(int inputdate, String inputmonthname)
{
daynumberofmonth = first_day_of_month(String inputmonthname);
daynumberofweek = ((daynumberofmonth + inputdate) - 1) % 7;
}
| |
Sune Vuorela (29-08-2004)
| Kommentar Fra : Sune Vuorela |
Dato : 29-08-04 17:34 |
|
On 2004-08-29, Dennis Olesen <olesenses@os.dk> wrote:
>
> Problemmet ligger i metoden calc. Min første linie skriver BlueJ at der
> mangler en ) men der kan også nemt være noget andet galt. Jeg kan bare ikke
> se hvad der er problemmet.
>
> private int daynumberofmonth
> private int daynumberofweek;
hmm... det går vidst galt allerede lidt herover. Kan du se forskellen på
de to linjer?
--
Sune
| |
Dennis Olesen (29-08-2004)
| Kommentar Fra : Dennis Olesen |
Dato : 29-08-04 19:25 |
|
Jeg mangler selvfølgelig et ; men det var ikke kun den fejl jeg havde fået
lavet.
Øvelse burde gør mester
Tak for hjælpen.
MVH
Dennis Olesen
| |
Jonas Kongslund (29-08-2004)
| Kommentar Fra : Jonas Kongslund |
Dato : 29-08-04 17:34 |
|
On Søndag den 29. august 2004 18:11, Dennis Olesen wrote:
> Jeg har skrevet følgende kode men det dur ikke. Er der nogen som kan
> hjælpe mig lidt vidre.
>
> Problemmet ligger i metoden calc.
[...]
> public String calc(int inputdate, String inputmonthname)
> {
> daynumberofmonth = first_day_of_month(String inputmonthname);
Her antager du at metoden first_day_of_month returnerer noget, men det gør
den ikke da dens returtype er void.
>
> daynumberofweek = ((daynumberofmonth + inputdate) - 1) % 7;
> }
En helt anden ting. Man sammenligner ikke strenge ved at skrive
if (monthname == "October") { ... }
Dette gøres ved at skrive
if ("October".equals(monthname)) { ... }
Når du bruger == så sammenligner du objektidentiteter, mens equals
sammenligner objekttilstand. Sammenligner du objektidentiteter så vil du
opleve at to strenge kan godt være forskellige selvom de er ens.
--
Jonas Kongslund
| |
Jonas Kongslund (29-08-2004)
| Kommentar Fra : Jonas Kongslund |
Dato : 29-08-04 17:35 |
|
On Søndag den 29. august 2004 18:33, Jonas Kongslund wrote:
> On Søndag den 29. august 2004 18:11, Dennis Olesen wrote:
>
>> Jeg har skrevet følgende kode men det dur ikke. Er der nogen som kan
>> hjælpe mig lidt vidre.
>>
>> Problemmet ligger i metoden calc.
> [...]
>> public String calc(int inputdate, String inputmonthname)
>> {
>> daynumberofmonth = first_day_of_month(String inputmonthname);
>
> Her antager du at metoden first_day_of_month returnerer noget, men det gør
> den ikke da dens returtype er void.
Derudover så skal du ikke angive argumenttypen String når du kalder en
metode.
--
Jonas Kongslund
| |
|
|