weixin_44157032 2022-03-11 16:42 采纳率: 68.8%
浏览 22
已结题

如何用条件语句判断多种情况?

比如说现在有A,B,C三种情况
我是这么写的:

//A为真则输出1,B则为2,C是3,全为真则输出1,2,3,全为假则输出0。
if(A && B && C){
  alert("1,2,3")
}

if(A == false && B == false && C == false){
  alert("0")
}

if(A){
  if(B == false && C == false){
    alert("1")
  }else if(B && C == false){
    alert("1,2")
  }else if(B == false && C){
    alert("1,3")
  }
}
if(B){
    if(A == false && C == false){
      alert("2")
    }else if(A == false && C){
      alert("2,3")
    }
}

if(C){
    if(A == false && B == false){
      alert("3")
    }
}
  

有能让代码精简一点的写法吗?

  • 写回答

2条回答 默认 最新

  • Cqy_Chaos 2022-03-11 17:20
    关注
                string[] arrStr;
                List<string> _list = new List<string>();
    
                if (A)
                {
                    _list.Add("1");
                }
    
                if (B)
                {
                    _list.Add("2");
                }
    
                if (C)
                {
                    _list.Add("3");
                }
    
                arrStr = _list.ToArray();
    
                if (arrStr.Length > 0)
                {
                    alert(string.Join(",", arrStr));
                }
                else
                {
                    alert("0");
                }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月14日
  • 已采纳回答 3月14日
  • 修改了问题 3月11日
  • 创建了问题 3月11日

悬赏问题

  • ¥15 mmocr的训练错误,结果全为0
  • ¥15 python的qt5界面
  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀