我试图建立商店柜台,并希望根据用户在文本字段中输入的内容来更新计数器。
我希望计数器按他们输入的数字改变。
因此,如果他们输入5则上升5但如果他们在5之后输入4则计数器下降4。
这是我到目前为止所得到的,但它只是在计算。
int prev = 0;//previus input
int temp = 0;//temp variable
int put = 0;//parsed int
try {
put = Integer.parseInt(itemCount1.getText());
if (put < prev) {//if they decrese the number of an item in there cart.
temp = put - prev;
cart.setCartCount(cart.getCartCount() - temp);
sitem1.setItemCnt(put - sitem1.getItemCnt());
prev = put;
}
if (put > prev) {//if they increse the number of an item in there cart.
temp = put - prev;
cart.setCartCount(cart.getCartCount() + temp);
sitem1.setItemCnt(put + sitem1.getItemCnt());
prev = put;
}
updateLables(customer);
} catch (NumberFormatException e) {
storeError.setText("ENTER A NUMBER!!!!");
}
答案 0 :(得分:0)
如果put比你之前做的少
temp = put-prev
因为put少于那么prev temp将是负面的你那么
cart.setCartCount(cart.getCartCount() - temp);
因为两个否定结果为正,所以会增加临时而不是减去它。
答案 1 :(得分:0)
在两个 if
语句中,您必须在此声明中使用+
:
cart.setCartCount(cart.getCartCount() - temp);
与第一个if
temp
变量的负值一样。