JSON jsonObject.optString () retorna a string “nulo”

Estou desenvolvendo um aplicativo Android que usa JSON para a comunicação do servidor e tenho um problema estranho quando estou tentando analisar meu arquivo json.

Este é o meu json do servidor

{
    "street2": null,
    "province": null,
    "street1": null,
    "postalCode": null,
    "country": null,
    "city": null
}

Estou recebendo o valor para City chamandoString city = address.optString("city", "") no meu endereço Json-objeto. Para esta situação eu estou esperandocityestar vazio (é o que optString está aqui, não é?) mas na verdade ele contém a String "null". Portanto, outras verificações nulas ou isEmpty retornarão false, pois a String contém texto. Se eu ligaraddress.isNull("city") ele retorna verdadeiro, o que é correto. SomenteoptString falha.

Não encontrei nada no Google ou no Stackoverflow para este problema. Eu realmente não entendo como isso pode acontecer como eu pensavaoptString faria exatamente o que eu esperava. Alguém sabe o que está errado aqui?

questionAnswers(7)

yourAnswerToTheQuestion