재귀(再歸) : 원래 자리로 되돌아오거나 되돌아옴
재귀 코드 예시
public void recursion() {
System.out.println("This is");
System.out.println("RECURSION!!!!");
recursion();
}
> 출력
> This is
> RECURSION!!!!
> This is
> RECURSION!!!!
> This is
> RECURSION!!!!
> This is
> ...
재귀 함수 : 자기 자신을 호출하는 함수
재귀 함수 장점
재귀 함수 단점
재귀함수 사용 조건
재귀적 사고 연습
JSON 탄생 배경
jackson 라이브러리에서 제공하는 ObjectMapper 클래스를 사용한 JSON형태로 변경하는 방법
ObjectMapper mapper = new ObjectMapper();
String json = mapper.writeValueAsString(message); // 직렬화(serialize)
System.out.println(json);
/*
출력
{"createdAt":"2022-09-01,10:10:10","receiver":"이자바","sender":"박스프링","message":"같이 코딩공부할래?"}
*/
ObjectMapper mapper = new ObjectMapper();
String json = "{\"createdAt\":\"2022-09-01,10:10:10\",\"receiver\":\"이자바\",\"sender\":\"박스프링\",\"message\":\"같이 코딩공부할래?\"}";
Map<String, String> deserializedData = mapper.readValue(json, Map.class); // 역직렬화(deserialize)
System.out.println(deserializedData);
/*
출력
{createdAt=2022-09-01,10:10:10, receiver=이자바, sender=박스프링, message=같이 코딩공부할래?}
*/
readValue를 적용하는 과정을 역직렬화(deserialize)한다고함
JSON은 키와 값 사이, 키-값 쌍 사이에 공백이 존재해서는 안됨