사용자한테 문자열을 입력받아 각각의 알파벳이 몇자 인지 판별하는 프로그램
<순서>
1. a~z까지 갯수 표현 (물론 0까지 포함)
2. a~z까지 갯수 표현 (0갯수인건 포함 안함)
3. a~z까지 갯수 표현 (0갯수인건 포함 안함)
A~Z까지 갯수 표현(0갯수인건 포함 안함)
<실행 예>
입력 : apple Test
출력 : a:1, p:2, l:1, e:2, T:1, t:1
<코드1>
: a~z까지 갯수 표현 (물론 0까지 포함)
import java.util.Scanner;
class CountLetter2{
public static void main(String[] args) {
int cnt[] = new int[26]; // 자바에서 배열을 선언하면 자동으로 모든 요소의 값이 초기화 된다
// 위에 것은 26개 모두가 0 으로 된다.
// [0][0][0][0][0]...... 이런식으로
// 소문자를 위한 거
Scanner sc = new Scanner(System.in);
String str;
System.out.print("문자열을 입력하시오==> ");
str = sc.nextLine();
for (int i = 0 ; i < str.length() ; i++){
char ch = str.charAt(i); //
cnt[ch - 'a']++;
}
System.out.println("=== 각 문자의 수 ===");
for (int i = 0; i < 26 ; i++ ){
System.out.println((char)(97+i) + " : " + cnt[i]);
}
}
}
<코드2>
: a~z까지 갯수 표현 (0갯수인건 포함 안함)
import java.util.Scanner;
class CountLetter2{
public static void main(String[] args) {
// 사용자한테 문자열을 입력받아 각각의 알파벳이 몇자 인지 판별하는 프로그램
// 예) apple Test
// a:1, p:2, l:1, e:2, T:1, t:1
int cnt[] = new int[26]; // 자바에서 배열을 선언하면 자동으로 모든 요소의 값이 초기화 된다
// 위에 것은 26개 모두가 0 으로 된다.
// [0][0][0][0][0]...... 이런식으로
// 소문자를 위한 거
Scanner sc = new Scanner(System.in);
String str;
System.out.print("문자열을 입력하시오==> ");
str = sc.nextLine();
for (int i = 0 ; i < str.length() ; i++){
char ch = str.charAt(i); //
cnt[ch - 'a']++;
}
System.out.println("=== 각 문자의 수 ===");
for (int i = 0; i < 26 ; i++ ){
if(cnt[i] !=0){
System.out.println((char)(97+i) + " : " + cnt[i]);
}
}
}
}
<코드3>
a~z까지 갯수 표현 (0갯수인건 포함 안함)
A~Z까지 갯수 표현(0갯수인건 포함 안함)
import java.util.Scanner;
class CountLetter2{
public static void main(String[] args) {
// 사용자한테 문자열을 입력받아 각각의 알파벳이 몇자 인지 판별하는 프로그램
// 예) apple Test
// a:1, p:2, l:1, e:2, T:1, t:1
int cnt[] = new int[26]; // 자바에서 배열을 선언하면 자동으로 모든 요소의 값이 초기화 된다
// 위에 것은 26개 모두가 0 으로 된다.
// [0][0][0][0][0]...... 이런식으로
// 소문자를 위한 것
int cnt2[] = new int[26]; // 대문자의 수를 파악하기 위한 것
Scanner sc = new Scanner(System.in);
String str;
System.out.print("문자열을 입력하시오==> ");
str = sc.nextLine();
for (int i = 0 ; i < str.length() ; i++){
char ch = str.charAt(i); //
if (ch >= 'A' && ch <= 'Z'){ //ch >= 65 && ch <= (65+25) 와 같은말
cnt2[ch - 'A']++;
}else if (ch >= 'a' && ch <= 'z'){
cnt[ch - 'a']++;
}
}
System.out.println("=== 소문자 문자의 수 ===");
for (int i = 0; i < 26 ; i++ ){
if(cnt[i] !=0){
System.out.println((char)(97+i) + " : " + cnt[i]);
}
}
System.out.println("=== 대문자 문자의 수 ===");
for (int i = 0; i < 26 ; i++ ){
if(cnt2[i] !=0){
System.out.println((char)(65+i) + " : " + cnt2[i]);
}
}
}
}
'JAVA > JAVA' 카테고리의 다른 글
자바 예제 - 메소드 : 메소드를 이용한 구구단 만들기 (0) | 2016.06.12 |
---|---|
자바 메소드 정의 및 예제 (0) | 2016.06.12 |
자바 예제 - 배열 : 배열 중복 검사 (0) | 2016.06.12 |
자바 예제 - 2차원 배열 : 초기값 설정 (0) | 2016.06.12 |
자바 예제 - 2차원 배열 : .length 이용 (0) | 2016.06.12 |