Я пытаюсь написать метод 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 полями.
EDIT:
Это своего рода данные, которые я хочу, выводимый:
{ "Top10BidAsks": [ { "Bid": { "Цена": 10,0, "Размер": 2,0, «ExchangeID»: «SMART», «TimeStamp»: 0}, «Спросить»: {«Цена»: 12,0, «Размер»: 2,0, «ExchangeID»: «SMART», «TimeStamp»: 0}}, {«Bid»: {«Цена»: 0.0, «Размер»: 0.0, «ExchangeID»: «SMART», «TimeStamp»: 0}, «Спросить»: {«Цена»: 13,0, «Размер»: 12,0 , «ExchangeID»: «SMART», «TimeStamp»: 0}}] }
As вы можете увидеть {«Цена»: 10.0, «Размер»: 2.0, «ExchangeID»: «SMART», «TimeStamp»: 0} - это по существу 4 поля, построенные из моего класса MarketData.
Заявка и запрос - это по существу один объект (внутренний класс, созданный из двух объектов Marketdata). И, наконец, весь объект является классом MarketDataListLevel2.
В принципе, я хочу, чтобы мой метод toString мог выводить данные, которые включают все 3 из этих классов.
Что на самом деле возвращается как есть? – nhgrif
Ну что вы хотите, чтобы результат был? И почему у вас есть поле и класс под названием «BidAskList»? (Почему ваши поля PascalCased начинаются с? Было бы намного легче прочитать код, если бы вы соблюдали обычные соглашения об именах Java.) –
имя экземпляра в java не должно начинаться с заглавной буквы – Sage