Develop

[프로그래머스] 첫 번째로 나오는 음수 본문

개인 공부/프로그래머스

[프로그래머스] 첫 번째로 나오는 음수

개발 기록 2024. 2. 11. 00:05

 

문제

 

 

내풀이

import java.util.stream.*;

class Solution {
    public int solution(int[] num_list) {
        int count = 0;
        for(int a : num_list){
                if(a<0){
                    return count;
                }else{
                    count++;  
                }
            }
        return -1;
    }
}

 

 

다른풀이1

class Solution {
    public int solution(int[] num_list) {
        for (int i = 0;i < num_list.length;i++)
            if (num_list[i] < 0)
                return i;
        return -1;
    }
}

 

 

다른풀이2

import java.util.stream.IntStream;

class Solution {
    public int solution(int[] numList) {
        return IntStream.range(0, numList.length).filter(i -> numList[i] < 0).findFirst().orElse(-1);
    }
}

 

 

느낀점

 

로직은 쉬워서 코드를 줄이는데 신경썼다

Stream 을 사용해서 하려고 했으나

첫번째 값만 받아오는 방법을 몰라서 filter까지만 적고 지웠다ㅜㅜ

findFirst() 가 아마도 조건에 해당하는 첫번째 값을 가져오는 함수같다

이렇게 또 하나 배워간다