Les constantes, variables et méthodes de cette classe sont immédiatement accessibles sans qu’il soit nécessaire d’utiliser une instruction import. La déclaration suivante est implicite :
import java.lang.*;
Les variables
MAX_VALUE représente la valeur maximale qui puisse être stockée dans une variable float : 3.40282346638528860e+38f.
MIN_VALUE représente la valeur minimale qui puisse être stockée dans une variable float : 1.40129846432481707e-45f.
NEGATIVE_INFINITY représente la valeur -infini.
POSITIVE_INFINITY représente la valeur +infini.
NaN représente une valeur indéterminée.
Le constructeur
Le constructeur Float permet de définir un objet Float à partir d’une variable float ou double :
public Float(float value);
public Float(double value);
Exemple :
Voir méthodes IntValue, longValue, doubleValue, floatValue et hashCode.
Les méthodes
isInfinite()
Cette méthode retourne la valeur true si le float spécifié en argument a une valeur infinie. Elle retourne la valeur false dans le cas contraire :
static public boolean isInfinite(float v);
Exemple :
public class Test {
public static void main (String args[]) {
float x = (float) (1/0.0);
System.out.println(x);
System.out.println(Float.isInfinite(x));
}
}
Le premier println affiche la valeur infinite et le second la valeur true. Java considère donc que la valeur stockée dans la variable x est infinie.
Remarque
Vous pouvez également utiliser la méthode isInfinite() pour déterminer si un objet Float a une valeur infinie :
public boolean isInfinite();
toString()
Cette méthode renvoie une chaîne de caractères qui représente le float passé en argument :
public static native String toString(float f);
Exemple :
public class Test {
public static void main (String args[])
{
float x = (float) Math.PI;
String S;
S = Float.toString(x);
System.out.println(S.length());
}
}
Après conversion du float x en chaîne de caractères :
S = Float.toString(x);
il devient possible d’utiliser les méthodes de la classe String pour travailler sur la valeur convertie du float :
System.out.println(S.length());
Remarque
Vous pouvez également utiliser la méthode toString() pour convertir un objet Float en un objet String :
public String toString();
intValue()
La méthode intValue() retourne la valeur entière de l’objet Double sur lequel elle est appliquée :
public int intValue()
Exemple :
public class Test {
public static void main (String args[])
{
float x = (float) Math.PI;
Float frr = new Float(x);
System.out.println(frr.intValue());
}
}
La première instruction affecte la constante PI à la variable float x :
float x = (float) Math.PI;
La deuxième instruction définit l’objet Float frr à partir de la variable float x :
Float frr = new Float(x);
Enfin, la troisième instruction affiche la valeur entière de l’objet frr :
System.out.println(frr.intValue());
Remarque
Si la valeur à convertir est stockée dans une variable float (et non dans un objet Float), il sera plus simple d’utiliser la syntaxe suivante :
float x = (float) Math.PI;
System.out.println((int) x);
longValue()
La méthode longValue() retourne la valeur entière long de l’objet Double sur lequel elle est appliquée :
public long longValue()
Exemple :
public class Test {
public static void main (String args[])
{
float x = (float) 1486618620.65617;
Float Fx = new Float(x);
long Lx = Fx.longValue();
System.out.println(Lx);
}
}
La première instruction initialise la variable x :
float x = (float) 1486618620.65617;
La deuxième instruction définit l’objet float Fx à partir de la variable float x :
Float Fx = new Float(x);
La troisième instruction définit la variable long Lx en appliquant la méthode longValue() sur l’objet Float Fx :
long Lx = Fx.longValue();
Remarque
Si la valeur à convertir est stockée dans une variable double (et non dans un objet Double), il sera plus simple d’utiliser la syntaxe suivante :
float x = (float) 1486618620.65617;
long Lx = (long) x;
floatValue()
La méthode floatValue() retourne la valeur réelle float de l’objet Float sur lequel elle est appliquée :
public float floatValue()
Exemple :
public class Test {
public static void main (String args[])
{
float x = (float) 1.234567890123456789e12f;
Float Fx = new Float(x);
float fx = Fx.floatValue();
System.out.println("Le nombre original : " + x);
System.out.println("Après conversion : " + fx);
}
}
La première instruction initialise la variable x :
float x = (float) 1.234567890123456789e12f;
La deuxième instruction définit l’objet Float Fx à partir de la variable float x :
Float Fx = new Float(x);
La troisième instruction définit la variable float fx en appliquant la méthode floatValue() sur l’objet Float Fx :
float Fx = Fx.floatValue();
doubleValue()
La méthode doubleValue() retourne la valeur réelle double de l’objet Double sur lequel elle est appliquée :
public double doubleValue();
Exemple :
public class Test {
public static void main (String args[]) throws java.io.IOException
{
double d1;
String Interm;
System.out.println("Entrez une valeur réelle float : ");
Interm = Lit();
d1=Float.valueOf(Interm).doubleValue();
System.out.println("Voici sa conversion en double : " + d1);
}
public static String Lit() throws java.io.IOException
{
String S = "";
char C;
while ((C=(char)System.in.read()) != '\r')
{
S = S + C;
}
C=(char)System.in.read();
return S;
}
}
La fonction Lit() acquiert les caractères tapés au clavier et les retourne sous forme d’une chaîne String lorsque la touche Entrée est pressée.
Dans la procédure main(), un message invite l’utilisateur à entrer une valeur réelle float :
System.out.println("Entrez une valeur réelle float : ");
Les caractères tapés sont ensuite mémorisés et stockés dans la variable String Interm :
Interm = Lit();
L’instruction suivante stocke dans la variable r1 la conversion réelle double de la chaîne Interm :
r1=Float.valueOf(Interm).doubleValue();
La méthode valueOf(Interm) convertit la chaîne Interm en un objet Float. Cette méthode fait partie de la classe Float. Elle est dont référencée par Float.valueOf(Interm). On applique ensuite la méthode doubleValue() à l’objet Float qui vient d’être défini, pour le convertir en un réel double…
Remarque
Si la valeur à convertir est stockée dans une variable float (et non dans un objet Float), il sera plus simple d’utiliser la syntaxe suivante :
double d1 = (double) x;
hashCode()
Cette méthode retourne le hashcode (chaque objet Java possède un hashcode qui lui est propre) de l’objet sur lequel elle est appliquée :
public int hashCode();
Exemple :
public class Test {
public static void main (String args[])
{
float x = 1.2345678f;
Float Fx = new Float(x);
System.out.println(Fx.hashCode());
}
}
La troisième instruction de la procédure main() affiche le hashcode de l’objet Float précédemment défini :
Float Fx = new Float(x);
System.out.println(Fx.hashCode());
equals()
Cette méthode compare l’objet this et l’objet spécifié. Elle renvoie la valeur true si les objets sont identiques et la valeur false dans le cas contraire :
public boolean equals(Object obj)
valueOf()
Cette méthode retourne un objet Float initialisé à la valeur numérique placée dans l’argument String :
public static native Float valueOf(String s) throws NumberFormatException;
Exemple :
Voir la méthode doubleValue().
floatToIntBits()
Cette méthode renvoie la représentation binaire d’une valeur double :
public static native int floatToIntBits(float value);
Exemple :
public class Test {
public static void main (String args[])
{
float x = 123.456f;
int binaire = Float.floatToIntBits(x);
System.out.println("Valeur initiale : " + x);
System.out.println("Conversion binaire : " + binaire);
System.out.println("Conversion binaire->float : " + Float.intBitsToFloat(binaire));
}
}
Dans un premier temps, une valeur réelle float est stockée dans la variable x :
float x = 123.456f;
Cette variable est convertie en binaire avec la méthode floatToIntBits() et stockée dans la variable int binaire :
int binaire = Float.floatToIntBits(x);
La valeur initiale et la conversion binaire sont ensuite affichées :
System.out.println("Valeur initiale : " + x);
System.out.println("Conversion binaire : " + binaire);
Enfin, la valeur binaire est reconvertie en un réel float avec la méthode intBitsToFloat() et affichée :
System.out.println("Conversion binaire->float : " + Float.intBitsToFloat(binaire));
intBitsToFloat()
Cette méthode renvoie la représentation float d’une valeur binaire :
public static float intBitsToFloat(int bits);
Exemple :
Voir la méthode floatToIntBits().
parseFloat()
Cette méthode renvoie la représentation String d’un objet Float.