# JSTL＆lt; c：选择＆gt;，＆lt; c：当＆gt;，＆lt; c：否则＆gt;核心标签

> 原文： [https://beginnersbook.com/2013/11/jstl-cchoose-cwhen-cotherwise-core-tags/](https://beginnersbook.com/2013/11/jstl-cchoose-cwhen-cotherwise-core-tags/)

在本文中，我们讨论**＆lt; c：选择＆gt;，＆lt; c：when＆gt;和＆lt; c：否则＆gt; JSTL 的核心标签**。这些标签一起使用，如 **switch-case 和 java 中的默认**语句。 c 为 C：选择＆GT;就像开关一样，＆lt; c：when＆gt;喜欢可以在里面多次使用的情况＆lt; c：choose＆gt;用于评估不同的 2 条件。 c 为 C：否则＆GT;类似于默认语句，当所有＆lt; c：when＆gt;陈述是错误的。

**语法：**

基本结构看起来像这样 -

```
<c:choose>
    <c:when test="${condition1}">
       //do something if condition1 is true
    </c:when>
    <c:when test="${condition2}">
        //do something if condition2 is true
    </c:when>
    <c:otherwise>
        //Statements which gets executed when all <c:when> tests are false.
    </c:otherwise>
</c:choose>
```

## 例

在这个例子中，我们有三个数字，我们使用这三个核心标记来比较它们。示例非常简单易懂。在示例代码之后提供输出的屏幕截图。

```
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<title>c:choose, c:when and c:otherwise Tag Example</title>
</head>
<body>
<c:set var="number1" value="${222}"/>
<c:set var="number2" value="${12}"/>
<c:set var="number3" value="${10}"/>
<c:choose>
 <c:when test="${number1 < number2}">
     ${"number1 is less than number2"}
 </c:when>
 <c:when test="${number1 <= number3}">
     ${"number1 is less than equal to number2"}
 </c:when>
 <c:otherwise>
     ${"number1 is largest number!"}
 </c:otherwise>
</c:choose>
</body>
</html>
```

产量

![c-choose-example](../Images/9893eeb2d3914319bfc614b6f368f962.jpg)