#★ 모음과 자음의 개수
## 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)
```
*답변 기다리겠습니다.^^*
sehongpark님의 답변
## 문자열 배열을 하나로 합치기
`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;
}
```
sehongpark님의 답변
## 자음과 모음 개수 세기
`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;
}
```
jinwan98님의 답변
정말 감사합니다.^^
많은 도움이 되었습니다.