import java.util.Locale;
class Solution {
boolean solution(String s) {
boolean answer = true;
//혹은 s.toUpperCase()를 사용해서 모두 대문자로 바꿔준다
s = s.toLowerCase();
int p_count = 0;
int y_count = 0;
for (int i = 0; i < s.length(); i++){
//charAt(i)는 i에 위치한 값을 char로 반환한다.
if(s.charAt(i) == 'p') {
p_count++;
}
if(s.charAt(i) == 'y') {
y_count++;
}
}
answer = (p_count == y_count) ? true : false;
return answer;
}
}
++다른 답
다른 예제를 보다가 filter를 사용하는 것을 몇 문제 보았다.
filter도 Stream 메소드라 사용방법은 이전에 사용했던 anyMatch와 비슷한 것 같다.
class Solution {
boolean solution(String s) {
s = s.toUpperCase();
return s.chars().filter( e -> 'P'== e).count() == s.chars().filter( e -> 'Y'== e).count();
}
}
'Language > JAVA' 카테고리의 다른 글
#char (0) | 2022.01.17 |
---|---|
#ArrayList + List (0) | 2022.01.17 |
[프로그래머스] 내적 (0) | 2022.01.15 |
[프로그래머스] 나누어 떨어지는 숫자 배열 (0) | 2022.01.15 |
[프로그래머스] 2016년 (0) | 2022.01.15 |