[인프런 워밍업 클럽 BE 0기] 2일차 과제
2024.02.20
문제 1
두 수를 입력하고, 다음과 같은 결과가 나오는 GET API를 만들어보자!
Controller code
@GetMapping("/api/v1/calc")
public CalcResponse calculator(NumberRequest request){
return new CalcResponse(request.getNum1(), request.getNum2());
}Dto code
public class CalcResponse {
private int add;
private int minus;
private int multiply;
public CalcResponse(int num1, int num2) {
this.add = num1 + num2;
this.minus = num1 - num2;
this.multiply = num1 * num2;
}
public int getAdd() {
return add;
}
public int getMinus() {
return minus;
}
public int getMultiply() {
return multiply;
}
}public class NumListRequest {
private List<Integer> numbers;
public List<Integer> getNumbers() {
return numbers;
}
}Reuslt


문제 2
날짜를 입력하면, 몇 요일인지 알려주는 GET API를 만들어 보자!
Controller code
@GetMapping("/api/v1/week")
public WeekResponse getWeek(DateRequest day){
return new WeekResponse(day.getDay());
}Dto code
public class DateRequest { private String date; public DateRequest(String day) { this.date = day; } public LocalDate getDay() { return LocalDate.parse(date); } }public class WeekResponse { private DayOfWeek datOfTheWeek; public WeekResponse(LocalDate day) { this.datOfTheWeek = day.getDayOfWeek(); } public DayOfWeek getDatOfTheWeek() { return datOfTheWeek; } }LocalDate.parse(date):yyyy-MM-dd형태의 문자열을 LocalDate 객체로 변환LocalDate의getDayOfWeek()메소드 : 해당 날짜 객체의 요일을 DayOfWeek 열거체를 이용하여 반환Reuslt


문제 3
여러 수의 총 합을 반환하는 POST API를 만들어 보자!
Controller code
@PostMapping("/api/v1/add")
public int addNum(@RequestBody NumListRequest request){
return request.getNumbers().stream().mapToInt(i -> i).sum();
}mapToInt(i->i) : 스트림을 IntStream으로 변환
Dto code
public class NumListRequest { private List<Integer> numbers; public List<Integer> getNumbers() { return numbers; } }Reuslt


댓글을 작성해보세요.