|
| Hvor stor kan en int være Fra : Martin Schou |
Dato : 11-03-01 05:45 |
|
Ja, en int kan være +/- 2^31, men prøv lige at compile denne klasse:
public class IntSizeTest
{
private int et = 01;
private int to = 02;
private int tre = 03;
private int fire = 04;
private int fem = 05;
private int seks = 06;
private int syv = 07;
private int otte = 08;
private int ni = 09;
private int ti = 10;
private int nulottenul = 080;
private int nulnulotte = 008;
private int nulninul = 090;
private int nulnulni = 009;
}
jeg får følgende fejl:
IntSizeTest.java:10: integer number too large: 08
private int otte = 08;
^
IntSizeTest.java:11: integer number too large: 09
private int ni = 09;
^
IntSizeTest.java:13: integer number too large: 080
private int nulottenul = 080;
^
IntSizeTest.java:14: integer number too large: 008
private int nulnulotte = 008;
^
IntSizeTest.java:15: integer number too large: 090
private int nulninul = 090;
^
IntSizeTest.java:16: integer number too large: 009
private int nulnulni = 009;
^
Er der nogen af Jer, som har en ide om, hvad fanden der går galt?
Det er ikke fordi jeg ikke kan undvære at sætte et eller flere nuller
foran mine tal, jeg gjorde det bare for at få koden til at se pænere ud.
Jeg er bare afsindig nysgerrig.
Martin Schou
| |
Bertel Lund Hansen (11-03-2001)
| Kommentar Fra : Bertel Lund Hansen |
Dato : 11-03-01 07:50 |
|
Martin Schou skrev:
> private int et = 01;
Med et foranstillet 0 forlanger du oktaltal, altså grundtal 8.
> private int otte = 08;
Cifferet 8 findes ikke i det talsystem.
>Er der nogen af Jer, som har en ide om, hvad fanden der går galt?
Ja.
--
Bertel
http://lundhansen.dk/bertel/ FIDUSO: http://fiduso.dk/
| |
Jan Uhre (11-03-2001)
| Kommentar Fra : Jan Uhre |
Dato : 11-03-01 12:11 |
|
Martin Schou <schou@mail.ikasths.dk> skrev i en
nyhedsmeddelelse:20010311.4451448@troy.ipc68...
Ja, en int kan være +/- 2^31, men prøv lige at compile denne klasse:
public class IntSizeTest
{
private int et = 01;
private int to = 02;
private int tre = 03;
private int fire = 04;
private int fem = 05;
private int seks = 06;
private int syv = 07;
private int otte = 08;
private int ni = 09;
private int ti = 10;
private int nulottenul = 080;
private int nulnulotte = 008;
private int nulninul = 090;
private int nulnulni = 009;
}
jeg får følgende fejl:
IntSizeTest.java:10: integer number too large: 08
private int otte = 08;
^
IntSizeTest.java:11: integer number too large: 09
private int ni = 09;
^
IntSizeTest.java:13: integer number too large: 080
private int nulottenul = 080;
^
IntSizeTest.java:14: integer number too large: 008
private int nulnulotte = 008;
^
IntSizeTest.java:15: integer number too large: 090
private int nulninul = 090;
^
IntSizeTest.java:16: integer number too large: 009
private int nulnulni = 009;
^
Er der nogen af Jer, som har en ide om, hvad fanden der går galt?
Det er ikke fordi jeg ikke kan undvære at sætte et eller flere nuller
foran mine tal, jeg gjorde det bare for at få koden til at se pænere ud.
Jeg er bare afsindig nysgerrig.
Martin Schou
Jamen, det har jeg da, Martin.
nnnnn = decimal værdi
0nnnnn = octal værdi
0xnnnnn = hexadecimal værdi
08 eksisterer ikke i det octale talsystem.
| |
Martin Schou (12-03-2001)
| Kommentar Fra : Martin Schou |
Dato : 12-03-01 18:53 |
|
DOH!!!!!
Mange tak til de herrer Bertel Lun Hansen og Jan Uhre.
/Hektor
| |
|
|