私は、シリアライズ可能なオブジェクト(キャッシュ可能なものを移動する必要があります。誰もシリアライズ可能オブジェクトから離れていると言います)と、複雑なオブジェクトをJSONObjectsに変換するwriteメソッドを開始します。メソッドPutを使用したJSONObjectの構築
要点:私は、複雑なオブジェクトからJSONObjectを作成する方法について説明し始めました。私は単純にちょうどこれを試してみました:
LocationModelはこのようになりますJSONObject toReturn = new JSONObject();
Iterator<LocationModel> locIter = locationList.iterator();
while (locIter.hasNext())
{
try {
toReturn.put("location", locIter.next());
} catch (JSONException e) {
}
}
:
public class LocationModel implements Serializable {
private String name;
private double Longitude;
private double Latitude;
private String description;
public LocationModel(
basic construtor sets variables above
}
public String toString()
{
return (name + " 8888 " + longitude + "/" + latitude + " !! " + description);
}
}
今(私少なくともに)奇妙なことは、最初のイテレータの後ということですJSONObjectを文字列として出力すると、次のようになります。
{"location": "LocationName 8888 -1/1 !!ここではいくつかの説明 "} JSONObjectのためのドキュメントで
質問
- JSONObject.putの言及(名前、オブジェクト)のオブジェクトを呼び出すありません『ので、どのように/なぜのtoString』機能が実際には私のLocationModelクラスは文字列を返す他の関数を持っているので、文字列を返す唯一の関数ではありません。
まあ、Javaオブジェクトのドキュメントを見ているうちに、私はこれらのメソッドを使用すると自動的に呼び出されると思われるtoString()メソッドを持っていることがわかりますか?他の人が私が思うなら質問を削除します。 – IamAlexAlright