muszę zapełnić obiekt JSON takiego, powiedzmy to nazywa detailJSON:Czy istnieje sposób mogę opróżnić cały JSONObject - java
{"amount": "5.00", "ac_no": "123456" }
zrobić to w ten sposób:
detailJSON.put("amount","5.00");
detailJSON.put("ac_no","123456");
Po tym, detal zostanie wprowadzony w niektórych wspólnych upodobań, a teraz chcę jasnego ten JSONObject i korzystać z tego samego przedmiotu detailJSON aby zapisać kolejny json (z różnych kluczy), w ten sposób:
{"amount":"6.00", "loan_no":"123456"}
Wiem, że istnieje metoda remove(), która usuwa określony klucz i odpowiednią wartość.
To działa:
detailJSON.remove("amount");
detailJSON.remove("ac_no");
a następnie użyć go -
detailJSON.put("amount","6.0");
detailJSON.put("loan_no","123456");
Teraz jest to bardzo prosty przykład. W kodzie, nad którym pracuję, mam wiele kluczy, więc użycie remove faktycznie zwiększa LOC. Za każdym razem przed usunięciem muszę sprawdzić, czy JSONObject has
tego konkretnego klucza, czy nie.
Czy istnieje inny sposób, mogę wdrożyć wyczyszczenie JSONObject?
Próbowałem
detailJSON=null ;
detailJSON=new JSONObject();
Ale to nie działa.
Zasadniczo poszukuję czegoś takiego jak metoda clear(), jeśli istnieje.
Czy na pewno chcesz to zrobić? Dlaczego nie używać świeżego JSONObject za każdym razem? Myślę, że bardziej kosztowne byłoby usunięcie każdego pola niż tylko utworzenie nowego. –
@UweAllner Ja też całkowicie zgadzam się z tobą, ale to jest ograniczenie biznesowe, aby utrzymać taką strukturę. – inquisitive
'detailJSON = new JSONObject();' powinien działać. Wygląda na to, że masz gdzieś błąd w kodzie. – Philipp