给出一个字符串值,如何遍历Thymeleaf中的每个字符?
#strings.arraySplit
和相关方法不起作用,因为它们使用不支持零宽度分隔符的StringTokenkizer
。
<p>Characters in <span th:text="${myString}"/>:</p>
<ul><li th:each="char : ${...}" th:text="${char}"/></ul>
答案 0 :(得分:2)
如文档所述,您也可以使用th:each迭代数组。 一种选择是:
<ul><li th:each="char : ${mystring.toCharArray()}" th:text="${char}"/></ul>
此处有更多信息:https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html#iterable-values
编辑: 经过一个小的测试,我发现 char 是一个 Character 包装对象。我对此进行了测试:
<ul><li th:each="char : ${myString.toCharArray()}" th:text="'Is it a char primitive:' + ${char instanceof T(char)}"/></ul>
<ul><li th:each="char : ${myString.toCharArray()}" th:text="'Is it a Character wrapper:' + ${char instanceof T(Character)}"/></ul>