2017-04-08 12 views

答えて

1

the source codeを見ると、それは出力にMapの順序でプロパティをMapイテレータを使用し、それはだ順序を保持すべきHashMapに基づいています。これは、あなたが望む方法でそのエントリーを注文しません。

しかし、再度、ソースコードを見て、あなたは自然にそのキーの順序(またはあなたが提供するComparatorによる)に応じてそのエントリを維持TreeMap、にJSONObjectをコピーし、出力にJSONObject.writeJSONString(Map,Writer)を使用することができますその地図。マップのイテレータを使用するため、キー順になります。


サイドノート:JSON表記特性をオブジェクトへの順序を有していません。しかし、例えば、2つのJSONテキストの意味のある比較を可能にするためにそれらを特定の順序で出力している場合、そのことがJSONテキストが特定の順序で出力されることを保証する1つの理由です。

関連する問題