JSON(JavaScript Object Notation)은 경량 데이터 교환 형식으로, 키-값(key-value) 쌍의 구조로 이루어져 있습니다. JSONArray는 문자열(String)로부터 텍스트를 파싱하여 벡터와 유사한 객체를 생성할 수 있으며, java.util.List 인터페이스를 지원합니다.
Java에서 두 개의 JSON 배열을 병합하려면 org.json.simple.JSONArray 클래스를 사용할 수 있습니다. 이 클래스는 java.util.List 인터페이스로부터 상속받은 addAll() 메서드를 제공하며, 이를 활용하면 두 배열을 손쉽게 하나로 합칠 수 있습니다.
예제 코드
아래 프로그램은 addAll() 메서드를 사용하여 두 개의 JSON 배열을 병합하는 방법을 보여줍니다.
import org.json.simple.JSONArray;
import java.io.IOException;
public class MergeJSONArraysTest {
public static void main(String[] args) throws IOException {
// 첫 번째 JSON 배열 생성
JSONArray jsonArray1 = new JSONArray();
jsonArray1.add("Java");
jsonArray1.add("Python");
jsonArray1.add("Spark");
// 두 번째 JSON 배열 생성
JSONArray jsonArray2 = new JSONArray();
jsonArray2.add("Selenium");
jsonArray2.add("ServiceNow");
// addAll() 메서드로 두 배열 병합
jsonArray1.addAll(jsonArray2);
System.out.println(jsonArray1);
}
}실행 결과
["Java","Python","Spark","Selenium","ServiceNow"]
정리
addAll() 메서드는 List 인터페이스에 정의된 표준 메서드이기 때문에, org.json.simple 라이브러리뿐만 아니라 Jackson, Gson 등 다른 JSON 라이브러리에서도 유사한 방식으로 배열 병합을 구현할 수 있습니다. 위 예제처럼 첫 번째 배열 객체에 대해 addAll(jsonArray2)를 호출하면 두 번째 배열의 모든 요소가 첫 번째 배열의 끝에 추가되어 하나의 배열로 합쳐집니다.