Как напечатать массив как матрица с Thymeleaf - PullRequest
0 голосов
/ 13 ноября 2018

У меня есть один массив:

private int[] array = {0,1,2,3,4,5,6,7,8,9,10,11,12,13};

Я делаю печать:

<table>
     <tr th:each="ar : ${array }">
         <td th:text="${ar}"></td>
     </tr>
</table>

Но напечатайте ниже каждый:

0

1

2

3

Как отобразить его с помощью Thymeleaf, как matriz:

0  1  2  3  4 5 6 

13 12 11 10 9 8 7

1 Ответ

0 голосов
/ 13 ноября 2018

Если вы хотите, чтобы это было в сетке, вы должны сначала настроить данные как сетку.

Это:

private int[] array = {0,1,2,3,4,5,6,7,8,9,10,11,12,13};

Скорее должно быть:

int[][] matrix = {
    {0,1,2,3,4,5,6},
    {7,8,9,10,11,12,13}
};

Тогда ваш ThymeLeaf легко получается:

<table>
    <tr th:each="row: ${matrix}">
        <td th:each="value: ${row}" th:text="${value}" />
    </tr>
</table>

Если вы действительно хотите создать таблицу из одного массива, вам придется делать предположения о ваших данных. Для исходных данных это будет работать, например (но не будет работать, если исходный массив изменил длину):

<table>
    <tr th:each="row: ${#numbers.sequence(0, 1)}">
        <td th:each="col: ${#numbers.sequence(0, 6)}" th:text="${array[(row * 7) + col]}" />
    </tr>
</table>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...