5번 문제는 문자열을 Scanner를 통해서 입력을 받아 하나하나를 배열에 넣고
검색할 문자를 문자열에서 찾는 문제이다
public void practice5() {
Scanner sc = new Scanner(System.in); // Scanner 생성
System.out.print("문자열 : "); // 문자를 입력을 할수 있게 문자열 구조 next();
String str = sc.next();
System.out.print("문자열 : ");
String strch = sc.next(); // 문자열을 입력을 하고 입력한 문자를 출력하기 위한 작업
char ch = strch.charAt(0); // 문자열에 입력된 문자를 꺼내기 위해서 // char 자료형 = strch.charAt();
// 입력 받은 문자열을 배열에 문자 하나하나 저장 => 문자형 배열
// 문자열의 길이 : 문자열_변수/ 값.length()
// 배열 길이 : 배열_변수/ 값.length()
char[] arrch = new char[str.length()]; // 배열은 char형 자료형에 배열 안에는 문자열이 입력될 [str.length()]
char[] arrch = new char[str.length()]
for (int i = 0; i < arrch.length; i++) {
arrch[i] = str.charAt(i); // arrch[i] = str.charAt(i)
} // 반복문이 조건에 따라 수행을 하면서 i초기값 0 부터 인덱스 0부터 char 자료형
str.charAt(i)를 따라 입력을 받게 된다.
System.out.printf("%s에 %c가 존재하는 위치(인덱스) :", str, ch);
int count = 0; // 문자열에 포함된 글자 중 문자형을 선택해서 몇 개가 들어있는지 확인을 위해서
char 갯수를 세어줄 int 정수 자료형 int count를 데이터 값을 0으로 선언한다
for (int i = 0; i < arrch.length; i++) {
if (arrch[i] == ch) { // for문은 i가 arr.length; 만큼 조건을 만족할 때 까지 반복 수행한다.
count++; // 이때 arrCh 배열 안에 있는 글자와 ch가 입력된 갯수가 같을 때
System.out.print(i + " "); // 증감 연산자를 이용한 count++; 수행을 한다
} // 밑 프린트 메서드 안에 i를 넣었다 반복문이 0부터 수행이 되는 동안
} // 조건이 참일 때 if문이 수행을 하므로 카운터가 수행하는
System.out.println(); // arrCh[] 배열 i 인덱스 값 때 조건을 수행을 한다
System.out.print(ch + "의 갯수 : " + count);
}
'Java' 카테고리의 다른 글
자바 프로젝트 (0) | 2024.06.20 |
---|---|
KH 교육과정 (7일차) 자바_ 배열 실습 및 2차원 배열 (0) | 2024.06.19 |
KH 정보교육원 (5일차) 수업_배열 (0) | 2024.06.18 |
자바 특징 (장단점) (0) | 2024.06.17 |
Java 개발자 양성과정 KH 교육원 1주차 (6월11 ~6월 14일) 내용 정리_2 (0) | 2024.06.16 |