深色模式
数字字面量
数字字面量就是直接书写的数字,无需额外包裹符号,Thymeleaf 会直接将其解析为数值类型并支持算术运算。
html
<p>The year is <span th:text="2013">1492</span>.</p>
<p>In two years, it will be <span th:text="2013 + 2">1494</span>.</p>核心代码解释
纯数字赋值: 第一行中
th:text="2013"直接将数字字面量2013作为文本渲染,替换<span>内的默认值1492,最终显示The year is 2013。算术运算支持: 第二行中
th:text="2013 + 2"会先执行算术运算2013 + 2 = 2015,再将结果渲染到标签中,替换默认值1494,最终显示In two years, it will be 2015。 除了加法+,还支持减法-、乘法*、除法/、取模%等常见算术运算,例如:html<!-- 乘法:显示 10 --> <span th:text="5 * 2">0</span> <!-- 取模:显示 1 --> <span th:text="7 % 3">0</span>与变量表达式结合: 数字字面量可与变量表达式混合运算,实现动态数值计算:
html<!-- 假设上下文变量 age=18,显示 20 --> <span th:text="${age} + 2">0</span>
关键注意事项
- 数字字面量无需加单/双引号(加了会被解析为文本字面量,无法运算): ❌ 错误:
th:text="'2013' + 2"(结果为字符串拼接20132,而非数值运算2015); ✅ 正确:th:text="2013 + 2"(数值运算,结果为2015)。 - 支持整数、小数形式:html
<!-- 显示 3.14 --> <span th:text="3.14">0</span> <!-- 显示 6.28 --> <span th:text="3.14 * 2">0</span>
总结
- 数字字面量是直接书写的数值(整数/小数),无需包裹符号,可直接用于赋值或算术运算;
- 支持
+/-/*///%等算术运算,运算优先级符合常规数学规则; - 与变量表达式混合使用时,会自动进行数值运算(需确保变量为数值类型),避免字符串拼接的坑。
