숑숑이의 개발일기

문제

https://school.programmers.co.kr/learn/courses/30/lessons/181920

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

문제 설명

정수 start_num와 end_num가 주어질 때, start_num부터 end_num까지의 숫자를 차례로 담은 리스트를 return하도록 solution 함수를 완성해주세요.

 

풀이

초기문, 증감문이 2개인 for문을 이용해 풀었다.

 

코드

class Solution {
    public int[] solution(int start_num, int end_num) {
        int[] answer = new int[end_num - start_num + 1];
        for (int i = 0, j = start_num ; i < answer.length ; i++, j++) {
            answer[i] = j;
        }
        return answer;
    }
}

 

다른 사람의 코드

import java.util.stream.IntStream;

class Solution {
    public int[] solution(int start, int end) {
        return IntStream.rangeClosed(start, end).toArray();
    }
}

 

import java.util.stream.IntStream;

public class test {
	public static void main(String[] args) {
    	IntStream.range(1, 10).forEach(i -> {
        	System.out.println(i);
            // 1~9까지 출력
        });
    }
}

range()의 두 번째 파라미터는 -1으로 가독성을 떨어트리니 두번 째 파라미터 범위를 포함하는 rangeClose() 메서드를 사용하자. 

profile

숑숑이의 개발일기

@숑숑-

풀스택 개발자 준비중입니다