java - 为嵌套类编写 toString 方法

标签 java tostring

<分区>

我正在尝试为其中有一个内部类的类编写一个 toString() 方法,但我遇到了麻烦。我正在考虑循环遍历每个数组,但我没有做对。任何建议都会很棒。

public class MarketDataListLevel2 {

    public static class BidAskList {
        protected  MarketData Bid;
        protected MarketData Ask;
        private BidAskList(@JsonProperty("Bid") MarketData Bid, @JsonProperty("Ask") MarketData Ask) {
            this.Bid = Bid;
            this.Ask = Ask;
        }
    }

    protected BidAskList[] BidAskList;
    public MarketDataListLevel2(@JsonProperty("Top10BidAsks") BidAskList[] BidAskList) {
        this.BidAskList = BidAskList;
    }       

    public String toString() {
        // Will make an edit to this later
    }
}

MarketData 本质上是一个包含 4 个字段的对象。

编辑:

这是我想要输出的数据类型:

{“Top10BidAsks”:[ {"Bid":{"Price":10.0,"Size":2.0,"ExchangeID":"SMART","timeStamp":0}, "Ask":{"Price":12.0,"Size":2.0,"ExchangeID":"SMART","timeStamp":0}}, {"Bid":{"Price":0.0,"Size":0.0,"ExchangeID":"SMART","timeStamp":0}, “询问”:{“价格”:13.0,“大小”:12.0,“ExchangeID”:“SMART”,“timeStamp”:0}}]

如您所见,{"Price":10.0,"Size":2.0,"ExchangeID":"SMART","timeStamp":0} 本质上是从我的 MarketData 类构造的 4 个字段。

买价和卖价本质上是一个对象(由两个 Marketdata 对象组成的内部类)。最后,整个对象是 MarketDataListLevel2 类。

基本上我希望我的 toString 方法能够输出数据,这涉及所有 3 个类。

最佳答案

您可能想多了。

根据定义,内部类是仅由您的类私下访问的内容,因此在大多数情况下,即使知道您正在使用内部类,您也不需要任何外部类。因此,正如上面提到的其他人一样,您不需要为您的内部类实现 toString 方法。

但是,如果您真的想要传递该信息,您可以将其设置为类似扩展类的反向...您将在内部类中实现 toString,然后引用该 innerClass。外部类的 toString 中的 toString()。

关于java - 为嵌套类编写 toString 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19820892/

相关文章:

java - 二十一点游戏 - 如何使用 getter 和 toString() 方法

java - Objects.deepToString(Object o) 方法

java - 如何使用 toString 方法轻松整齐地打印多个对象,这些对象也已对齐?

java - 有2个toString方法吗?

javascript - 通过逗号和空格连接数组

java - MAIN 方法应该复制输入参数吗?

java - 从文本文件中识别具有升序字符的单词

java - 使用 Netbeans 获取所有 JSP 错误的列表

java - 链表中的匹配元素

java - 自定义 Android 适配器从不显示数据