返回顶部

三元运算符的嵌套详解:分别在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))

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

posted @   fen斗  阅读(2501)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示