Ich verwende JSTL-Tags. Ich habe unter dem Code.Booleschen Wert in Variable mit JSTL-Tags setzen?
<c:set var="refreshSent" value="false"/>
Jetzt Variable refreshSent hat Booleschen Wert oder String?
Danke!
Ich verwende JSTL-Tags. Ich habe unter dem Code.Booleschen Wert in Variable mit JSTL-Tags setzen?
<c:set var="refreshSent" value="false"/>
Jetzt Variable refreshSent hat Booleschen Wert oder String?
Danke!
Es wird ein boolean sein. Sie können es, indem sie in einem
<c:if test="${refreshSent eq false}">
und
<c:if test="${refreshSent eq 'false'}">
Der zweite Vergleich ist ein String-Vergleich.
<c:set var="refreshSent" value="false"/>
Wenn der Ausdruck in value
zu String
auswertet; dann ist der Wert var refreshSent
vom Typ String
.
Siehe http://docs.oracle.com/javaee/5/jstl/1.1/docs/tlddocs/ als Referenz.
Es gibt eine automatische Typumwandlung im Hintergrund.
Siehe http://today.java.net/pub/a/today/2003/10/07/jstl1.html
Ich benutze dies für boolean
<c:set var="refreshSent" value="${false}"/>
<c:if test="${refreshSent}">
some code ........
</c:if>
Sowohl value = "$ {false}" als auch value = "false" beziehen sich auf dasselbe in Ihrem Test ... Wenn Sie also Zeichen speichern möchten, verwenden Sie einfach value = "false" (ohne $ {} Bit...). –
Ja, es ist kann boolean und String sein.
<c:if test="${refreshSent}">
your code...
</c:if>
oder Sie können wie diese
<c:if test="${refreshSent eq 'false'}">
your code...
</c:if>
Dank verwenden.
Ich denke, dass die ausdrückliche Aussage, dass die erste erfolgreich ist und die zweite wird fehlschlagen wird die Antwort klären. Ich weiß, dass es albern ist, aber ich tendiere dazu, den Code zu lesen und lese erst später den Text. Vielen Dank! – Cristopher