[프로그래머스/Java] Lv.1 없는 숫자 더하기

이은정·2024년 8월 21일

프로그래머스/Java

목록 보기
15/74

문제

로직

integer 배열 형태로 들어온 numbers 변수를 먼저 List 형태로 변환한다.
그 후에 0부터 9까지 반복문을 실행한다.
반복문 안에서 ArrayList의 contains 함수를 이용하여 해당 숫자가 존재하는지 확인한다.
만약 존재하지 않는다면 answer에 해당 숫자를 더한다.

반복문을 탈출하면 answer를 반환한다.

코드

import java.util.*;

class Solution {
    public int solution(int[] numbers) {
        int answer = 0;
        
        List<Integer> numberList = new ArrayList<>();
        for (int num : numbers) {
            numberList.add(num);
        }
        
        for (int i = 0 ; i < 10; i ++) {
            if (!numberList.contains(i)) {
                answer += i;
            }
        }
        return answer;
    }
}

결과

새롭게 알게된 점

List.of() 메서드는 Integer, String과 같은 참조형 타입일 때에만 사용할 수 있다.
기본형 타입인 'int'는 List.of() 메서드를 사용할 수 없다.
그래서 int[] 배열을 List로 변환하려면 Arrays.stream()을 이용하거나 for 문을 이용하여 List에 값을 하나씩 삽입하는 방법이 있다.

profile
돈 많은 백수가 꿈인 백엔드 개발자 지망생

0개의 댓글