zoukankan      html  css  js  c++  java
  • 三元运算符的嵌套详解:分别在JSTL、JavaScript和Java中

    用来完成简单的选择逻辑,即根据条件判断,从两个选择中选择一种执行。

    使用格式:
    (条件表达式)?表达式1:表达式2;

    运算规则:条件表达式  值为一个布尔值,当值为true的时候 执行表达式1   否则的话执行表达式2

    这种写法可以代替我们一般的if-else-if语句

    常见的可以用于下面的几种情况中:

    JSTL中

            <c:forEach items="${page.list}" var="order">
                        <tr>
                        
                    <td>${order.orderId}</td>
                    <td>${order.goodId}</td>
                    <td>${order.shopperName}</td>
                    <td>${order.goodNumber}</td>
                    <td>${order.goodPrice}</td>
                    <td>${order.sumPrice}</td>
                    <td>${order.saleTime}</td>
                    <td>${order.orderStatus=="1"?"待审核":(order.orderStatus=="0"?"未通过":"已通过")}</td>      <!-- 1 代表待审核   0代表未通过  2 代表已通过 -->
                
                <shiro:hasAnyPermissions name="sys:order:edit">
                    <td>
                        <a href="${ctx}/sys/order/form?orderId=${order.orderId}">修改</a>
                        <a href="${ctx}/sys/order/delete?orderId=${order.orderId}">删除</a>
                    
                    </td>
                </shiro:hasAnyPermissions>
                </tr>
                </c:forEach>

    JavaScript中

    var state = null;
    
    var display_state = (state == null ? "未用" : (state == true ? "在用" : "停用"))
    
    //display_state
    //"未用"

    一般的三元运算符就够用了,

    但是此时有个需求:比如state有3个状态,{null,true,false}

    代表的意思如下:

    null→未用

    true→在用

    false→停用

    其实只有三元运算符,但这种嵌套的可以理解为"四元运算符"

    Java中

    String  str = (status = = CurStatus1 ? A :(status == CurStatus2 ?B : C))

    大多数情况中这种的使用是非常的方便的。

  • 相关阅读:
    记录未完成
    java8时间有关新特性
    《java多线程编程核心技术》----simpleDateFormat非线程安全
    基于JavaScript的表格设计:按序添加或删除班级的学生信息
    BOOK
    Android攻城狮Dialog
    Android攻城狮重新认识Toast
    Android攻城狮使用LogCat方式调试程序
    Android攻城狮属性动画赏析
    Android攻城狮布局动画
  • 原文地址:https://www.cnblogs.com/isme-zjh/p/12658746.html
Copyright © 2011-2022 走看看