Notice
Recent Posts
Recent Comments
Link
투케이2K
186. (java/자바) 알고리즘 : 특정 문자열 포함 여부 및 개수 확인 하기 - contains, charAt, substring 사용 본문
Java
186. (java/자바) 알고리즘 : 특정 문자열 포함 여부 및 개수 확인 하기 - contains, charAt, substring 사용
투케이2K 2021. 3. 31. 08:47/* =========================== */
[ 개발 환경 설정 ]
개발 툴 : Eclipse
개발 언어 : Java
/* =========================== */
/* =========================== */
[소스 코드]
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);
}
}//메인 종료
}//클래스 종료
/* =========================== */
[결과 출력]
/* =========================== */
/* =========================== */
[요약 설명]
* 1. ab 라는 문자열을 찾기 위해 먼저 a 문자가 있는 인덱스 값을 각각 배열에 담는다
* 2. a 문자 인덱스 기준으로 2자리씩 문자열을 잘라서 ab 문자가 맞는지 판단한다
* 3. substring(시작 번지, 종료 번지 전까지) 의미입니다
/* =========================== */
반응형
'Java' 카테고리의 다른 글
188. (java/자바) 주석 (comment) 개념 및 사용 방법 설명 (0) | 2021.04.02 |
---|---|
187. (java/자바) contentEquals 사용해 String과 다른 객체와의 문자열이 동일한 지 확인 실시 (0) | 2021.03.31 |
185. (java/자바) currentTimeMillis 사용해 코드 실행 속도 및 프로그램 실행 시간 측정 실시 (0) | 2021.03.31 |
184. (java/자바) HttpURLConnection 사용해 post body json 방식 데이터 요청 및 응답 값 확인 실시 (0) | 2021.03.30 |
183. (java/자바) HttpURLConnection 사용해 post (쿼리파람) 방식 데이터 요청 및 응답 값 확인 실시 (0) | 2021.03.30 |
Comments