개인 공부/프로그래머스
[프로그래머스] 첫 번째로 나오는 음수
개발 기록
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() 가 아마도 조건에 해당하는 첫번째 값을 가져오는 함수같다
이렇게 또 하나 배워간다