A JSON az egyik legnépszerűbb formátum az adatok szövegként történő megjelenítésére. A JSON például adatátvitelre szolgál a frontend és a háttérrendszer között, konfigurációs fájlokban, játékokban, szövegszerkesztőkben és sok más területen. Programozóként biztosan találkozni fog a JSON-val.

A szintaxis bemutatása

Soroljuk fel a JSON-ban elérhető adattípusokat:

  1. A karakterláncok bármely, dupla idézőjelbe tett karakterek:

    "kwerty"
    "125 + 42"
    "G"

    A speciális karaktereket perjellel kell kiemelni:

    "első sor\nmásodik sor"
    "Azt mondta: \"Helló!\"
  2. Számok, beleértve a negatív és valós számokat is. Nincs idézet:

    18 -333 17,88 1,2e6
  3. A logikai értékek igaz / hamisak (idézőjelek nélkül).

  4. null a standard érték a "semmi" kifejezésre. Itt nem használunk idézőjelet.

  5. Tömb – Ez a típus bármilyen más típusú értéket is tartalmazhat. Szögletes zárójelbe van csomagolva. Elemei vesszővel vannak elválasztva:

    ["Code", "Gym", "CodeGym", "¯\_(ツ)_/¯"]
    [igaz, igaz, hamis, igaz, hamis, hamis, hamis, hamis, hamis]
    [[1, 2], [3, 999, 4, -5], [77]]

    Az utolsó példa egy tömbök tömbje

  6. Objektum – Ez az összetett típus a leggyakrabban használt. Kulcs-érték párokat tartalmaz, ahol az érték a fent felsorolt ​​típusok bármelyike ​​lehet, valamint egyéb objektumok is. Göndör kapcsos zárójelbe van csomagolva, és a párokat vesszővel választjuk el:

    
    {
     "name": "Dale",
     "age": 7
    }
    

Java objektum ábrázolása JSON-ként

Most vegyünk néhány Java objektumot, és nézzük meg, hogyan néz ki JSON-ként.

Először is definiáljunk egy osztályt:


public class Human {
	String name;
	boolean male;
	int age;
	Set<Human> parents;

	public Human(String name, boolean male, int age) {
    	    this.name = name;
    	    this.male = male;
    	    this.age = age;
	}
}

Most hozzuk létre az objektumunkat:


	Human father = new Human("Peter", true, 31);
	Human mother = new Human("Mary", false, 28);
	mother.parents = new HashSet<>();
	Human son = new Human("Paul", true, 7);
	son.parents = Set.of(father, mother);

És most próbáljuk meg ábrázolni afiúobjektumot a lehető legpontosabban JSON formátumban:

{
 "név" : "Pál",
 "férfi" : igaz,
 "életkor" : 7,
 "szülők" : [
 {
   "név" : "Péter",
   "férfi" : igaz,
   "életkor" : 31,
   "szülők" : null
 },
 {
   "név" : "Mária",
   "férfi" : hamis,
   "életkor" : 28,
   "szülők" : null
 }
]
}

Megjegyzések JSON-ban

Itt minden pontosan ugyanaz, mint a Java-ban. Kétféle megjegyzés létezik: // és /*...*/. Remélem, nem kell emlékeztetnem, miben különböznek egymástól?