You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java Swing开发咖啡店菜单:如何实现多选单选按钮并计算总价

实现多商品总价计算的方法

你当前只能计算单个商品总价的核心原因是使用了if...else if的互斥判断逻辑,只要其中一个条件命中就会跳过其余商品的金额计算,且总价是直接赋值而非累加。修改方案如下:

  • 把所有的else if改为独立的if判断,每个选中的商品金额都累加到总价格中
  • 如果你的业务需求允许用户同时选购多个商品,不要使用单选按钮组,单选按钮组的特性就是同一时间只能选中一个选项,天然不支持多选场景,你可以考虑把单选按钮替换为复选框,更符合用户的多选交互认知。如果一定要保留单选按钮,需要把所有单选按钮移出按钮组,解除互斥限制。

改造后的代码示例:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
    double total = 0.0;
    // 每个商品单独判断,选中就累加对应金额
    if(rbCappucino.isSelected()){
        int count = Integer.parseInt(chboxCappucino.getValue().toString());
        total += count * 1.0;
    }
    if(rbAmericano.isSelected()){
        int count = Integer.parseInt(chboxAmericano.getValue().toString());
        total += count * 1.50;
    }
    if(rbLatte.isSelected()){
        int count = Integer.parseInt(chboxLatte.getValue().toString());
        total += count * 2.50;
    }
    // 格式化输出避免过多小数位
    totalText.setText(String.format("%.2f", total));
}                                        

你当前的实现效果:
当前实现效果

内容的提问来源于stack exchange,提问作者Feliks_JS

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 03:36:02