zey07 Json aslında string bir ifadedir. Örneğin:
String str ="{""FirstName"": ""Liza"", ""lastName"": ""Bon"", ""age"": 35, ""e-posta"": ""lizabon@example.com""}";
json.decode() metodu bunu dynamic veri türüne çeviri. dynamic aslında türü belli olmayan gibi de düşünebilirsiniz “var” gibi. Tüm veri tiplerini kapsayan base veri türü gibi düşünebilirsiniz. dynamic içine bütün veri tiplerini atabiliriz. Bu şekilde kullanmanın bir sakıncası yok. Ancak kodlamada sorunlar yaşamak istemeyiz. dynamic içindeki bir listeyi bir döngüye sokmak istersek veya item sayısını almak istersek kullanımda sorunlar yaşarız ve veri türünü bilmek isteriz. Bu sebeple json’u stringden map veri tipine çeviririz. json içinde gelen verilerin hangisi liste hangisi string veya int olduğunu belirleriz. Değer yoksa default değer verebiliriz ki null point exception almayalım. foreach count gibi metodları kolaylıkla kullanabilelim.
Birde şu yönden bakalım. Json aslında apilerin map bir ifadeyi http protokolü ile gönderebilmek için string’e dönüştürülmesiyle oluşan bir text’dir. Bizde bu string ifadeyi tekrar map’e dönüştürüyoruz ve kullanıyoruz.