|
| Newbee Jeg får en fejl Fra : sctclem |
Dato : 01-03-01 17:06 |
|
Jeg kan ikkefå dette til at virke: Jeg får hele tiden denne fejl:
"prefix of method compareTo must be a reference, not int".
Hvad gør jeg galt?
KeyoardInput class skulle virke. Det gør den i al fald med andre programmer.
/**
*Dette program skal blive ved med at sætte integer tal ind
*indtil -1 er nået;
*/public class IntegerInput {
public static void main(final int n) {
KeyboardInput in = new KeyboardInput();
int s = in.readInteger();
while ( s.compareTo("-1") !=0){
System.out.println("Skriv et tal: ");
s = in.readInteger();
}
}
}
| |
Lars Dam (01-03-2001)
| Kommentar Fra : Lars Dam |
Dato : 01-03-01 17:10 |
|
On Thu, 01 Mar 2001 16:05:50 GMT, "sctclem" <sctclem@worldonline.dk>
wrote:
>Jeg kan ikkefå dette til at virke: Jeg får hele tiden denne fejl:
>"prefix of method compareTo must be a reference, not int".
>
>
>Hvad gør jeg galt?
>KeyoardInput class skulle virke. Det gør den i al fald med andre programmer.
>
>/**
>*Dette program skal blive ved med at sætte integer tal ind
>*indtil -1 er nået;
>*/public class IntegerInput {
> public static void main(final int n) {
> KeyboardInput in = new KeyboardInput();
>
> int s = in.readInteger();
> while ( s.compareTo("-1") !=0){
s er en simpel type, og ikke et objekt.
brug: while( s!=-1 )
Desuden er det nok klogt at kalde din 's' variable for 'i', eller
noget andet. Man plejer at associere 's' med strenge. Ikke at det er
nødvendigt på nogen måde.
vh. ld
--
"Time is the fire in which we burn"
| |
Lars Dam (01-03-2001)
| Kommentar Fra : Lars Dam |
Dato : 01-03-01 17:14 |
|
On Thu, 01 Mar 2001 17:09:41 +0100, Lars Dam
<lars_simple_spam_protection_dam@post2.tele.dk> wrote:
>On Thu, 01 Mar 2001 16:05:50 GMT, "sctclem" <sctclem@worldonline.dk>
>wrote:
>
>>Jeg kan ikkefå dette til at virke: Jeg får hele tiden denne fejl:
>>"prefix of method compareTo must be a reference, not int".
>>
>>
>>Hvad gør jeg galt?
>>KeyoardInput class skulle virke. Det gør den i al fald med andre programmer.
>>
>>/**
>>*Dette program skal blive ved med at sætte integer tal ind
>>*indtil -1 er nået;
>>*/public class IntegerInput {
>> public static void main(final int n) {
>> KeyboardInput in = new KeyboardInput();
>>
>> int s = in.readInteger();
>> while ( s.compareTo("-1") !=0){
>
>s er en simpel type, og ikke et objekt.
Hov!
Hvis in.readInteger returnere et Integer objekt, så skal du ikke
erklære s som en int, men en Integer, så skulle det virke:
Integer s = in.readInteger();
Nu er 's' et objekt, og ikke en simpel type, og så vil compareTo
virke, hvis da du sammenligner med et andet Integer objekt:
while( s.compareTo( new Integer(-1) )!=0 ){
}
>brug: while( s!=-1 )
>
>Desuden er det nok klogt at kalde din 's' variable for 'i', eller
>noget andet. Man plejer at associere 's' med strenge. Ikke at det er
>nødvendigt på nogen måde.
>
>vh. ld
--
"Time is the fire in which we burn"
| |
sctclem (01-03-2001)
| Kommentar Fra : sctclem |
Dato : 01-03-01 22:47 |
|
>>brug: while( s!=-1 )
>>
Denne lille sætning løste det. Tak for hjælpen!
| |
|
|