繁体   English   中英

如何使用数据对象代替String [] []

[英]How can I use Data Objects instead of a String[][]

我正在调用一个RESTful api,它会给我以下响应:

{
    "asks": [
        [
            "219.82",
            "2.19"
        ],
        [
            "219.83",
            "6.05"
        ]
    ],
    "bids": [
        [
            "219.40",
            "17.46"
        ],
        [
            "219.13",
            "53.93"
        ]
    ]
}

我的数据对象实现现在看起来像这样:

public class OrderBook implements Serializable {

    /**
     * list containing the price and amount of all bid orders
     */
    private String[][] bids;

    /**
     * list containing the price and amount
     * of all ask orders
     */
    private String[][] asks;
}

如何用数据对象替换String [] []并确保GSON仍然可以解析它?

该API是外部的,我无法更改任何内容。 结果是具有两个属性的数组的数组。 我不想在Java中使用GSON在String [] []中对此进行解析,而是想要一个Asks and Bids类。 Asks类应包含对象Ask的数组,而对象Ask应当具有两个变量:作为字符串的value和amount。 这就是我想在我的Java代码中拥有的东西。

如果我对您的理解正确,则希望将出价类型从String[][]更改为Object

如果这样做,则必须考虑为该类创建自定义解串器。 有关详细信息,请参见此处

但是然后:不要那样做。 为什么要放弃类型安全性? 随意减少类型信息时,Java源代码的质量不会提高。

暂无
暂无

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

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