简体   繁体   English

JAVA JsonArray到常规多维数组

[英]JAVA JsonArray to regular multidimensional array

So I have a method. 所以我有一种方法。

public String getWidgetConfigAsString(List<DashboardColumn> dashboardList) {
        Gson gson = new Gson();
        JsonArray widgetConfigJson = gson.toJsonTree(dashboardList).getAsJsonArray();

        for (int i = 0; i < widgetConfigJson.getAsJsonArray().size(); i++) {
            System.out.println(widgetConfigJson.getAsJsonArray().get(i));
        }

        return widgetConfigAsString;
    }

And this method returns : 并且此方法返回:

{"widgets":["notary_registry","notary_tasks"]}
{"widgets":["calendar"]}
{"widgets":[]}

This is a JSF dashboard layout, basicly first row is first column of a dashboard and so on. 这是JSF仪表板布局,基本上第一行是仪表板的第一列,依此类推。

What I want to achieve is, to get just regular multi-Array which would give me output like : 我想要实现的是,仅获得常规的多数组,这将为我提供如下输出:

{["notary_registry","notary_tasks"]}
{["calendar"]}
{[]}

Looks ugly, but.. does the job, will find someting, that looks good enough to use.. :) 看起来很丑,但是..做这项工作,会发现一些东西,看起来足够好使用..::)

for (int i = 0; i < widgetConfigJson.size(); i++) {

            if (widgetConfigJson.get(i).toString().contains("widgets")) {
                int a = widgetConfigJson.get(i).toString().indexOf('[');
                int b = widgetConfigJson.get(i).toString().indexOf(']');

                System.out.println(widgetConfigJson.get(i).toString().substring(a, b + 1));
            }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM