[ÆĽÌ] 3. JSON Array ÆĽÌ
ÀÌÀü¹ø¿¡´Â °£´ÜÇÑ ¿¹Á¦¸¦ ÅëÇØ JSONÀ» ÀÌ¿ëÇÑ ÆÄ½Ì ¹æ¹ý¿¡ ´ëÇØ ¾Ë¾Æº¸¾Ò´Ù.
¿¹Á¦¿¡¼´Â 1¸íÀÇ ±³¼ö¿Í 1¸íÀÇ Çлý¸¸ °¡Áö°í ¿¹¸¦ µé¾î ºÃ¾ú´Ù.
±×·±µ¥ Çö½ÇÀûÀ¸·Î ´ëÇп¡ ±³¼ö¿Í ÇлýÀÌ 1¸í¸¸ ÀÖÀ»¸®´Â ¾ø´Ù. µû¶ó¼ ¿©·¯¸íÀÇ ±³¼ö¿Í ¿©·¯¸íÀÇ ÇлýÀ» Æ÷ÇÔÇÏ°íÀÚ ÇÑ´Ù. ¾î¶»°Ô Çϸé ÁÁÀ»±î?
Àú¹ø¿¡ °Á¶Çß´ø ³»¿ëÀ» ±â¾ïÇغ¸ÀÚ "JSONÀº Map±¸Á¶ÀÌ´Ù." ±×·¸´Ù. JSONÀº ¸Ê ±¸Á¶ÀÌ´Ù. µû¶ó¼ key¿Í value°¡ ½ÖÀ¸·Î ÀúÀåµÇ´Âµ¥ ¿©±â¼ Áß¿äÇÑ°Ç key°ªÀÌ Áߺ¹µÇ¸é ¾ÈµÈ´Ù´Â °ÍÀÌ´Ù. (¸¶Áö¸· °ª¸¸ ÀúÀåµÈ´Ù.)
Áï, professor³ª student¶ó´Â key°ªÀÌ Áߺ¹µÉ ¼ö ¾ø´Ù´Â ¾ê±âÀÌ´Ù. ±×·±µ¥ ¿ì¸®´Â ¿©·¯¸íÀÇ ±³¼ö¿Í ÇлýÀ» ÀúÀåÇØ¾ß Çϴµ¥ ¾î¶»°Ô ÇØ¾ß ÇÒ±î?
À̶§ ÇÊ¿äÇÑ°Ô ¹Ù·Î JSON ArrayÀÌ´Ù. JSONÀ» ¹è¿ ÇüÅ·Π³ªÅ¸³»¿© À妽ºº°·Î ³ª´©¾î ÀúÀåÇϸé Áߺ¹ ¹®Á¦¸¦ ÇÇÇÒ ¼ö ÀÖ´Â °ÍÀÌ´Ù.
¹è¿ ÇüÅ·Π³ªÅ¸³»¾îÁø JSON ¿¹Á¦¸¦ »ìÆ캸ÀÚ
¿©ÀüÈ÷ ÇÑÁÙ·Î ³ªÅ¸³»¸é º¹ÀâÇÏ´Ù. Á»´õ ¾Ë±â ½±°Ô ÁٹٲÞÀ» Çغ¸ÀÚ
ÇÑ°á ³ª¾ÆÁ³´Ù. ¿©±â¼ º¼ ¼ö ÀÖµíÀÌ [ ]·Î ¹ÀÎ ºÎºÐÀÌ ¹è¿ÀÌ µÇ´Â °ÍÀÌ´Ù. µû¶ó¼ ±è±³¼ö¿Í ÀÌÇлýÀº 0¹øÀ妽º, ¹Ú±³¼ö¿Í ÃÖÇлýÀº 1¹øÀ妽º, ³ª¸ÓÁö´Â 2¹øÀ妽º°¡ µÇ´Â°ÍÀÌ´Ù.
ÀÌÁ¦ À̸¦ ¹ÙÅÁÀ¸·Î ÆĽÌÀ» ½ÃÀÛÇغ¸ÀÚ.
ÀÌ ºÎºÐÀº ÆĽ̿¡ »ç¿ëÇÒ ¿¹Á¦¸¦ ¸¸µé¾îÁÖ´Â ÄÚµåÀÌ´Ù. Àü¹ø¿¡´Â ¸Þ¼Òµå¸¦ ÀÌ¿ëÇßÁö¸¸ ÆíÀǸ¦ À§ÇØ »ý¼ºÀÚ¸¦ ÀÌ¿ëÇØ ¸¸µé¾ú´Ù.
Ŭ·¡½º °´Ã¼ »ý¼ºÀ» ÇÏ¸é ¾ðÁ¦³ª ÀÚµ¿À¸·Î ±âº» »ý¼ºÀÚ°¡ È£ÃâµÇ´Âµ¥ ±âº» »ý¼ºÀÚ¿¡ JSONÀ» ¸¸µå´Â Äڵ带 ³Ö¾î InstantiationµÉ¶§¸¶´Ù ÀÚµ¿À¸·Î JSONÀÌ »ý¼ºµÇ°Ô ÇÏ¿´´Ù. ±î¸Ô¾úÀ»Áöµµ ¸ô¶ó¼ ¼³¸íÇÏ¿´´Ù.
ÀÌ Äڵ带 ¸ÞÀθ޼ҵ忡¼ InstantiationÇÏ¿© ½ÇÇà½ÃÄѺ¸¸é Ãâ·Â °á°ú´Â ¿ª½Ã Àß ³ª¿Â´Ù.
ÀÌÁ¦ À̸¦ ÆĽÌÇغ¸µµ·Ï ÇÑ´Ù. ¸ñÇ¥´Â Àü¹ø°ú µ¿ÀÏÇÏ°Ô À̸§µé¸¸ ¹Þ¾Æ¿À´Â °ÍÀÌ´Ù.
¾ðÁ¦³ª ±×·¸µí JSONParser¸¦ ¸ÕÀú ¸¸µé¾îÁØ´Ù. ±×¸®°í Á¦ÀÏ ¹Ù±ù°í¸®ÀÎ univºÎÅÍ Á¢±ÙÇØ ¹Þ¾Æ¿Â´Ù. ±×·±µ¥ ¹è¿ ÇüÅ·ΠÀúÀåµÇ¾îÀֱ⠶§¹®¿¡ JSONArrayÇüÅ·ΠÇüº¯È¯ ÇÏ¿© ¹Þ¾Æ¿Í¾ß ÇÑ´Ù.(Exceptionó¸® ¶ÇÇÑ ÀØÁö ¸»ÀÚ)
ÀÌÈÄ ¹è¿À̱⶧¹®¿¡ for¹®À» ÀÌ¿ëÇØ À妽º·Î Á¢±ÙÀ» ÇÏ¿´´Ù. for¹® ù°ÁÙ¿¡ tmp¶ó´Â Àӽà JSON¿ÀºêÁ§Æ®¸¦ ¼±¾ðÇÏ°í, arr.get(i)¸¦ ÅëÇØ i¹ø° °ªÀ» °¡Á®¿À°Ô ÇÏ¿´´Ù. ±×¸®°í professor¿Í student¸¦ °¢°¢ Çüº¯È¯ÇÏ¿© Ãâ·Â½ÃÄÑÁØ´Ù. for¹®ÀÇ ¹Ýº¹È½¼ö´Â 0¹ø ~ arr.size()À̱⠶§¹®¿¡ ÀÚ¿¬½º·´°Ô ¹è¿ÀÇ ±æÀÌ ¸¸Å¸¸ ¹Ýº¹Ãâ·ÂµÈ´Ù.
°á°ú°ªÀº ´ÙÀ½°ú °°´Ù.
¿Ï¼ºµÈ ÄÚµå Àü¹®Àº ¾Æ·¡¿Í °°´Ù.
ÄÚµå ±¸¼º :
¿©±â±îÁö Çؼ JSON Array¿¡ ´ëÇØ ¾Ë¾Æº¸¾Ò´Ù. »ç½Ç»ó Á¦°øµÇ´Â ´ëºÎºÐÀÇ JSONÀº ÀÌ·¯ÇÑ ¹è¿ ÇüÅ·ΠÁÖ¾îÁö±â ¶§¹®¿¡ JSONArray ÆĽÌÀ» ÀÍÈ÷´Â °ÍÀº ÇʼöÀûÀÌ´Ù.
´ÙÀ½ ½Ã°£¿¡´Â JSONÀ» ¹Þ´Âµ¥ ÇÊ¿äÇÑ APIÅ°¸¦ ¹ß±Þ¹Þ´Â ¹æ¹ýÀ» ¾Ë¾Æº¸°í º»°ÝÀûÀ¸·Î À¥À» ÅëÇÑ JSONÆĽ̿¡ ´ëÇØ »ìÆ캸°Ú´Ù.