我现在已经修好了,但在输入我的第一个号码后它仍然显示0。它显示我正确的vikt但不是在监狱。 :S
package Brev;
import static javax.swing.JOptionPane.*;
public class Uppgift1 {
public static void main(String[] arg) {
String indata = showInputDialog("Hur mycket väger ditt brev i gram?");
int vikt = Integer.parseInt(indata);
int pris = 0;
do {
indata = showInputDialog("Ditt porto kostar " + pris + " kr med vikten " + vikt + " Gram." +
"\nSkriv in en följande vikt för att addera på ditt nuvarande porto.");
vikt = vikt + Integer.parseInt(indata);
pris = pris + pris;
if (vikt < 1) {
showMessageDialog(null, "Error");
}
else if (vikt <= 50){
showMessageDialog(null, "Portot blir "+ (pris + 7) + "Kr. med " + vikt + " Gram.");
}
else if (vikt <= 100){
showMessageDialog(null, "Portot blir "+ (pris + 14) + "Kr. med " + vikt + " Gram.");
}
else if (vikt <= 250){
showMessageDialog(null, "Portot blir "+ (pris + 28) + "Kr. med " + vikt + " Gram.");
}
else if (vikt <= 500){
showMessageDialog(null, "Portot blir "+ (pris + 42) + "Kr. med " + vikt + " Gram.");
}
else if (vikt <= 1000){
showMessageDialog(null, "Portot blir "+ (pris + 56) + "Kr. med " + vikt + " Gram.");
}
else if (vikt <= 2000){
showMessageDialog(null, "Portot blir "+ (pris + 70) + "Kr. med " + vikt + " Gram.");
}
else if (vikt > 2000)
showMessageDialog(null, "Maximalvikten är 2000GRAM / 2KG");
} while (vikt <= 2000);
}
}
答案 0 :(得分:0)
你正在编写看起来含糊不清的代码:
"aString" + anInt + anotherInt + "anotherString"
Java将此解释为相当于:
("aString" + anInt) + anotherInt + "anotherString"
以便在添加之前将每个int
转换为String
,但您希望执行以下操作:
"aString" + (anInt + anotherInt) + "anotherString"
所以,请用最后一个明确的方式写出来。如果它们是字符串添加的一部分,请在数学公式周围加上括号。