通过+或 - 更新变量基于用户输入JTextField的内容

时间:2016-12-10 16:28:25

标签: java

我试图建立商店柜台,并希望根据用户在文本字段中输入的内容来更新计数器。

我希望计数器按他们输入的数字改变。

因此,如果他们输入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!!!!");
}

2 个答案:

答案 0 :(得分:0)

如果put比你之前做的少

temp = put-prev

因为put少于那么prev temp将是负面的你那么

cart.setCartCount(cart.getCartCount() - temp);

因为两个否定结果为正,所以会增加临时而不是减去它。

答案 1 :(得分:0)

两个 if语句中,您必须在此声明中使用+

cart.setCartCount(cart.getCartCount() - temp);

与第一个if temp变量的值一样。