TIL(Today I Learned)

[Java] 문자열에서 특정 문자의 개수를 출력하고 싶을 때는 "replace() 메서드" (+ 추가로 for문 사용)

yunseohhe 2024. 7. 26. 23:23

안녕하세요! 

오늘은 문자열에서 특정 문자를 출력하는 방법이 여러가지 있을텐데요.

그 중에 "replace()" 메서드를 이용한 방법을 알려드리고 싶어서 작성합니다.

 

replace()

  • java.String클래스에서 가져온 메서드입니다.
  • 특정 문자열을 다른 문자열로 바꿀 수 있는 메서드입니다.

 

완성된 코드

1. 일단, 선언한 문자열에서 "o" 의 개수를 세고싶다고 가정해봅시다.

2. 공식 : " 찾는 문자의 개수  =  원본 문자열의 길이  -  찾는 문자를 모두 공백으로 변경한 문자열의 길이 " 

3. replace() : repalce( 특정 문자열,  바꿀 다른 문자열 )

4.  length() : 문자열의 길이를 알 수 있는 메서드 입니다.

  ( cf : length - 배열의 길이 / size() - 컬렉션프레임워 타입의 길이 ) - 이참에 알고가시면 좋을 것 같습니다~!

 

 

 


for문으로 특정 문자의 개수를 구하는 방법

replace() 메서드를 발견하기 전에

사실, for문으로도 이용할 수 있을 것 같은데? 생각하다가 

어제, 오늘 여러가지로 시도해보고 중간중간 print해보면서 어떨결에 해답을 찾은 for문도 올려놓겠습니다.

참고하실 분은 참고하시면 될 것 같아요~!

for문으로 시도해서 성공한 코드

  • 일단 특정문자의 개수를 세야했기때문에, if문으로 특정문자를 continue로 걸러줬습니다.
  • 그리고, for문 안에서 나머지 문자열의 개수를 세고 싶었기 때문에 count라는 변수를 만들어줬습니다. ( for문 안에 선언하려고 했으나, 그러면 나중에 for문 밖에서 변수를 사용을 하지 못하기 때문에, main 지역에 선언하였습니다. )

 

 

여러가지 시도 끝에 성공하게 된거라 정말 뿌듯하기도 하고, 얼떨떨하기도 합니다.

그래도 기분은 좋네요ㅎㅎ

 

오늘도 읽어주셔서 감사합니다.