To: java@u-strasbg.fr
Subject: int, long, et affectation
Date sent: Thu, 19 Jul 2001 15:27:00 +0200 (MEST)
From: Nicolas Delsaux <nicolas.delsaux@free.fr>
Send reply to: java@u-strasbg.fr
Salut,
Dans un code réucpéré, je suis tombé sur l'instruction suivante :
public static final long VALEUR = 12L;
Et je ne comprtends pas l'intérêt du L dans ce cas. En effet, si il
spécifie qu'on stocke un long, et est utile dans le cas de grandes valeurs
(supérieures à 2^31-1), il me semble inutile dans le cas présent.
Pourriez-vous éclairer ma lanterne ? Merci Nicolas Delsaux
From: Speh Sylvain <sylvain.speh@CLERMONT.cemagref.fr>
To: java@u-strasbg.fr
Subject: RE: int, long, et affectation
Date sent: Thu, 19 Jul 2001 15:39:39 +0200
Send reply to: java@u-strasbg.fr
Le "L" me semble inutile dans ce cas, mais c'est peut-être par précaution
.. dans le temps, en pascal ( je m'en souviens plus bien ) un ordre du
style "double toto = 12" passait pas, il fallait coder "double toto =
12.0"
C'est peut être un reliquat du C ... voire une manie de ( vieux )
programmeur.
Bref, ça fait causer.
-----Message d'origine-----
De : Nicolas Delsaux [mailto:nicolas.delsaux@free.fr]
Envoyé : jeudi 19 juillet 2001 15:27
À : java@u-strasbg.fr
Objet : int, long, et affectation
Salut,
Dans un code réucpéré, je suis tombé sur l'instruction suivante :
public static final long VALEUR = 12L;
Et je ne comprtends pas l'intérêt du L dans ce cas. En effet, si il
spécifie qu'on stocke un long, et est utile dans le cas de grandes valeurs
(supérieures à 2^31-1), il me semble inutile dans le cas présent.
Pourriez-vous éclairer ma lanterne ? Merci Nicolas Delsaux
From: Erik Mazoyer <erik.mazoyer@hyperoffice.fr>
To: "'java@u-strasbg.fr'" <java@u-strasbg.fr>
Subject: RE: int, long, et affectation
Date sent: Thu, 19 Jul 2001 15:56:39 +0200
Send reply to: java@u-strasbg.fr
public static final long VALEUR = 12;
..An integer literal is of type long if it is suffixed with an ASCII
letter L or l (ell); otherwise it is of type int (§4.2.1). The suffix L is
preferred, because the letter l (ell) is often hard to distinguish from
the digit 1 (one)... voir
http://java.sun.com/docs/books/jls/second_edition/html/lexical.doc.html#48282
Veux dire qu'il faut affecter l'[entier] 12 à la constante [entier long]
nommée VALEUR. Il y a conversion de int vers long.
public static final long VALEUR = 12L;
Veux dire qu'il faut affecter l'[entier long] 12 à la constante [entier
long] nommée VALEUR. Il n'y a pas de conversion.
Bref la seconde écriture est plus "propre" :-)
Cordialement,
--------------------------------------------------------------------
Erik Mazoyer, Chef de projet
HyperOffice
6, rue Jacques Daguerre - 92565 Rueil-Malmaison Cedex
Tél. 01 41 96 96 76
Fax 01 41 96 96 77
Mél erik.mazoyer@hyperoffice.fr
-----Message d'origine-----
De: Nicolas Delsaux [mailto:nicolas.delsaux@free.fr]
Date: jeudi 19 juillet 2001 15:27
À: java@u-strasbg.fr
Objet: int, long, et affectation
Salut,
Dans un code réucpéré, je suis tombé sur l'instruction suivante :
public static final long VALEUR = 12L;
Et je ne comprtends pas l'intérêt du L dans ce cas. En effet, si il
spécifie qu'on stocke un long, et est utile dans le cas de grandes valeurs
(supérieures à 2^31-1), il me semble inutile dans le cas présent.
Pourriez-vous éclairer ma lanterne ? Merci Nicolas Delsaux