Jsp 逻辑运算符“是什么?”;不是";以EL表示的平均值

Jsp 逻辑运算符“是什么?”;不是";以EL表示的平均值,jsp,el,Jsp,El,给定以下代码: <% java.util.Map map = new java.util.HashMap(); request.setAttribute("map", map); map.put("a", "true"); map.put("b", "false"); map.put("c", "42"); %> ${not map.c} ${not map.c} ${not map.c}的输出为true。。。。这个表达式是什么类型的操作?为什么它的结果是真实的?说明书上说

给定以下代码:

<%
java.util.Map map = new java.util.HashMap();
request.setAttribute("map", map);
map.put("a", "true");
map.put("b", "false");
map.put("c", "42"); 
%>

${not map.c}

${not map.c}

${not map.c}
的输出为true。。。。这个表达式是什么类型的操作?为什么它的结果是真实的?

说明书上说:

一元not运算符-{!,not}A

  • 强制A为布尔值,应用运算符

强制A为布尔值

  • 如果A为null或“”,则返回false
  • 否则,如果A是布尔值,则返回A
  • 否则,如果A是字符串,并且Boolean.valueOf(A)不引发异常,则返回它
  • 否则,就会出现错误
map.c
是字符串
“42”
Boolean.valueOf(“42”)
false
,应用于
false
not
运算符返回
true