Quand j'ai fait java avec IntelliJ comme je le voulais, j'ai eu "Hmm?"
production.console
value = -0.0
Diviser 0 par un nombre négatif semble être -0,0
sample.java
public class Main {
public static void main(String[] args) {
double value = 0;
System.out.println("value = "+value/-1);
System.out.printf("value = %3.1f\n",value/-5);
}
}
production.console
value = -0.0
value = -0.0
Si déclaration Si vous remplacez 0 dans l'instruction if pour la valeur à diviser, l'affichage sera correct.
sample.java
public class Main {
public static void main(String[] args) {
double value = 0;
value /= -1;
System.out.println("Avant de traiter= "+value);
if(value == 0) value =0;
System.out.println("Après avoir traité= "+value);
}
}
production.console
Avant de traiter= -0.0
Après avoir traité= 0.0
Vous pouvez le corriger en ajoutant "+0" au calcul qui peut donner -0.
sample.java
public class Main {
public static void main(String[] args) {
double value = 0;
value /= -1 +0;//+0 alors-Ne devient pas 0
}
}
Recommended Posts