1. 내가 푼 기본적인 방법
class Solution {
public int solution(int n) {
int answer = 0;
for(int i=1;i<=n;i++) {
if(i%2 == 0) answer += i;
}
return answer;
}
}
2. for문을 2부터 돌려서 2개씩
class Solution {
public int solution(int n) {
int answer = 0;
for(int i=2;i<=n;i+=2) {
answer += i;
}
return answer;
}
}
3. while문
class Solution {
public int solution(int n) {
int answer = 0;
while(n>0) {
if(n%2 == 0) answer += n;
n--;
}
return answer;
}
}
4. Stream을 통한 연산
import java.util.stream.IntStream;
class Solution {
public int solution(int n) {
return IntStream.rangeClosed(0,n).filter(e -> e%2==0).sum();
}
}
확실히 Stream이 코드가 짧고 간결한 대신에 for문보다 오래걸린다.