/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
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



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste