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

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

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

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

正在回答

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

2回答

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

祝学习愉快


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

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

<%@ 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下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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