#★ 모음과 자음의 개수 ## CODE ``` public class AEIOU { public static String stringArrayToString(String[] strArr) { String str = ""; ////////////// <-이거하고 for (int i = 0; i < strArr.length; i++) { str += strArr[i] + " "; /////////////// <-이게 무슨 역할인지 잘 이해가 안됍니다. } return str; } public static int[] countVowelConsonant(String str) { /* 해당 메소드를 완성 하세요 */ int[] intArr = new int[2]; for (int i = 0; i < str.length(); i++) { switch (str.charAt(i)) { case 'a': case 'e': case 'i': case 'o': case 'u': intArr[0]++; break; case ' ': break; default: intArr[1]++; break; } } return intArr; } public static void main(String[] args) { // 문자열 배열을 하나의 문자로 반환 String str = stringArrayToString(args); // 모음과 자음을 수를 기록할 배열 int[] counters = new int[2]; // 개수를 셈 counters = countVowelConsonant(str); int vowel = counters[0]; /////////////// <- 여기에서 int vowel 하고 countVowelConsonant메소드의 intArr하고 어떤 상호작용이 있는 건가요? int consonant = counters[1]; // 출력 System.out.printf("%s: 자음(%d), 모음(%d)", str, vowel, consonant); } } ``` ## INPUT ``` Programming is fun ``` ## OUPUT ``` Programming is fun : 자음(5), 모음(11) ``` *답변 기다리겠습니다.^^*
## 문자열 배열을 하나로 합치기 `stringArrayToString()` 메소드는 문자열 배열을 입력받아 하나의 문자열로 반환합니다. ``` // strArr[0]: "Programming" // strArr[1]: "is" // strArr[2]: "Fun" public static String stringArrayToString(String[] strArr) { // 1. 공백 문자열을 만듭니다. String str = ""; // 2. 문자열 배열을 꺼내 하나씩 연결합니다. for (int i = 0; i < strArr.length; i++) { str += strArr[i] + " "; // "Programming " -> "Programming is " -> "Programming is fun " } // 3. 리턴: "Programming is fun " return str; } ```
## 자음과 모음 개수 세기 `countVowelConsonant()` 메소드는 **문자열**을 **입력**받아 **모음과 자음의 개수**를 배열로 **반환**합니다. ### 상호작용 흐름 ``` // str: "Programming is fun " -> 측정 대상 문자열 // counters: [5, 11] -> int타입의 배열(length: 2) counters = countVowelConsonant(str); // counters[0]: 5 -> 모음의 개수 int vowel = counters[0]; // counters[1]: 11 -> 자음의 개수 int consonant = counters[1]; ``` ### 자음 모음 개수 세기 ``` // 전달값: "Programming is fun " // 리턴값: 2칸 크기의 int형 배열 // => intArr[0]: 모음의 개수 // => intArr[1]: 자음의 개수 public static int[] countVowelConsonant(String str) { /* 해당 메소드를 완성 하세요 */ int[] intArr = new int[2]; for (int i = 0; i < str.length(); i++) { switch (str.charAt(i)) { case 'a': case 'e': case 'i': case 'o': case 'u': intArr[0]++; break; case ' ': break; default: intArr[1]++; break; } } return intArr; } ```
정말 감사합니다.^^ 많은 도움이 되었습니다.