반응형
알고리즘
JAVA 프로그래머스 문자열 내 p와 y의 개수
1. 문제
https://programmers.co.kr/learn/courses/30/lessons/12916
2. 풀이
어려운 문제는 아니었는데 .equals()부분에서 한동안 막혀있었다. 나는 계속 ==을 썼었는데 오류가 생긴것!!
알고보니 문자 배열인데 ==를 쓴것이 문제.
== 는 연산자로 비교하고자 하는 대상의 주소값을 비교하고,
equals는 메소드로 객체끼리 내용을 비교한다.
class Solution {
boolean solution(String s) {
boolean answer = true;
int Pcnt = 0;
int Ycnt = 0;
//s를 전부 소문자로 변환
String[] a = s.toLowerCase().split("");
for(int i=0; i<a.length; i++){
//p의 개수 구하기
if(a[i].equals("p")){
Pcnt++;
//y의 개수 구하기
} else if(a[i].equals("y")){
Ycnt++;
}
}
//비교해서 true/false
if(Pcnt == Ycnt){
answer = true;
} else {
answer = false;
}
return answer;
}
}
다른 풀이방법이 다양하지만 그중에 람다식으로 풀었다고 하는 방법이 눈에 띈다!
람다를 공부해보고 풀이법을 리뷰해봐야겠다!
반응형
'알고리즘 > Java' 카테고리의 다른 글
[JAVA] 프로그래머스 완주하지 못한 선수 (0) | 2021.11.12 |
---|---|
[JAVA] 프로그래머스 로또의 최고 순위와 최저 순위 (0) | 2021.11.12 |
[JAVA] 프로그래머스 3진법 뒤집기 (0) | 2021.11.11 |
[JAVA] 프로그래머스 문자열 내 마음대로 정렬하기 (0) | 2021.11.11 |
[JAVA] 프로그래머스 같은 숫자는 싫어 (0) | 2021.11.11 |