jstl怎么知道我存的值是字符串还是数字

jstl怎么知道我存的值是字符串还是数字

比如说 <c:set var="age" value="12" scope="request"></c:set>

编译器怎么知道value的数据类型?

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

这里面没有区分是什么类型,但是如果你想放置数值数据,而把数值数据写成了a12这种形式,那么后面就没办法进行比较了,jstl自己应该有一套机制,知道存的是什么类型。因为写代码的时候,咱们都知道自己写的类型是什么,所以我们可以自己加以判断。

祝学习愉快


好帮手慕阿莹 2018-07-26 13:35:34

这里并没有进行严格的类型的判断,比如,我们用字符串类型比较(因为"${age=='12' }"
用的“ ”为了和前边的“ ”区分,这里用了‘ ’代替。):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core"  prefix="c" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>jstl中的if标签和choose标签</title>
</head>
<body>
    <c:set var="age" value="12" scope="request"></c:set>
    <!-- if标签:
        test:接判断的条件,如果条件为true,这执行标签体中的内容
    -->
    <%-- <c:if test="${age==12 }">
        您的年龄为12岁
    </c:if>
    hello world --%>
    <hr>
    <!-- choose标签 -->
    <c:choose>
        <c:when test="${age=='12' }">
        您的年龄为12岁
        </c:when>
        <c:otherwise>
        您的年龄不为12岁
        </c:otherwise>
    </c:choose>
</body>
</html>

http://img1.sycdn.imooc.com//climg/5b594d3a000157ac04240185.jpg

  • 提问者 学东西要快 #1
    老师我并没有听明白。 您说的“并没有进行严格的类型的判断”是指 jstl 是不会进行严格的类型判断(比如 js 里面的 ==) 还是说我们的语法逻辑没有判断呀? 回到起点 jstl 怎么知道我们set的值是字符串还是数字呀
    2018-07-26 17:14:08
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
Java Web基础入门2018版
  • 参与学习       716    人
  • 提交作业       185    份
  • 解答问题       1363    个

会Java?懂前端基础?想学后台开发?那么,赶快来学习《Java Web入门》路径吧。本路径主要介绍Java Web的基础知识,并配有大量案例,定会让你收获多多!

了解课程
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师
插入代码