Notice
Recent Posts
Recent Comments
Link
투케이2K
17. (TWOK/ALGORITHM) [Java] 특정 문자열 포함 여부 및 개수 확인 하기 - contains, charAt, substring 사용 본문
투케이2K 알고리즘
17. (TWOK/ALGORITHM) [Java] 특정 문자열 포함 여부 및 개수 확인 하기 - contains, charAt, substring 사용
투케이2K 2022. 7. 13. 17:59[환경 설정 및 설명]
언 어 : Java
설 명 : 특정 문자열 포함 여부 및 개수 확인 하기 - contains, charAt, substring 사용
[소스 코드]
package ex5;
import java.util.ArrayList;
public class MainActivity13 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("[특정 문자열 포함 여부 및 개수 확인 하기 - contains, charAt, substring 사용]");
//전체 문자열 변수를 선언해줍니다
String total_str = "안녕abab하세요. ab만나서 반갑습니다";
System.out.println("전체 문자열 : "+total_str);
//특정문자 개수를 카운트하기 위한 변수 선언 실시
int str_count = 0;
//a라는 문자의 각각 인덱스 값을 저장하기 위해 배열 선언
ArrayList a_list = new ArrayList();
if(total_str.contains("ab")) { //ab 라는 문자열을 포함하는 경우
/*[설 명]
* 1. ab 라는 문자열을 찾기 위해 먼저 a 문자가 있는 인덱스 값을 각각 배열에 담는다
* 2. a 문자 인덱스 기준으로 2자리씩 문자열을 잘라서 ab 문자가 맞는지 판단한다
* 3. substring(시작 번지, 종료 번지 전까지) 의미입니다
* */
//for문을 수행해 각 문자가 a값이 맞는지 확인한다
for(int i=0; i<total_str.length(); i++) {
if(total_str.charAt(i) == 'a') {
a_list.add(i); //a 문자 인덱스값을 배열에 담는다
}
}
//배열사이즈를 확인해 a문자 개수 만큼 다시 for 반복문을 수행하며 2자리씩 문자열을 잘라서 확인한다
String pandan = "";
for(int i=0; i<a_list.size(); i++) {
int start_idx = Integer.valueOf(a_list.get(i).toString());
pandan = total_str.substring(start_idx, start_idx+2);
if(pandan.equals("ab")) { //자른 문자열이 ab 문자열과 같으면
str_count ++; //ab 체크 카운트값을 증가시킨다
}
}
//ab 문자 개수 확인 실시
System.out.println("ab 개수 : "+str_count);
}
else {
System.out.println("ab 개수 : "+str_count);
}
}//메인 종료
}//클래스 종료
[참고 사이트]
반응형
'투케이2K 알고리즘' 카테고리의 다른 글
19. (TWOK/ALGORITHM) [Java] 완주하지 못한 선수 - hashmap 해쉬맵 사용 (0) | 2022.07.14 |
---|---|
18. (TWOK/ALGORITHM) [Java] 키패드 누르기 - 좌표 값 확인 (0) | 2022.07.14 |
16. (TWOK/ALGORITHM) [Java] for문 사용해서 달팽이 모양 배열 순차적으로 데이터 삽입 실시 (0) | 2022.07.13 |
15. (TWOK/ALGORITHM) [Java] 이중 for문을 사용해서 두 배열 교집합 데이터 출력하기 (0) | 2022.07.13 |
14. (TWOK/ALGORITHM) [Java] 1부터 10까지 숫자 중 홀수는 더하기, 짝수는 빼기 스위치 (switch) 연산해 합계를 구하기 (0) | 2022.07.13 |
Comments