统计不同的字符的种类

时间:2022-08-08 11:30:37

题目描述

  编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127)。不在范围内的不作统计。

输入描述:

  输入N个字符,字符在ACSII码范围内。

输出描述:

  输出范围在(0~127)字符的个数。

输入例子:

  abc

输出例子:

  3
  

代码实现:

  • 思路:

    限定数组的长度为128,则根据当前字符所代表的ASCII值大小,然后对指定的位置的元素,进行++

package cn.c_shuang.demo11;

import java.util.Scanner;
/**
* 编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127)。不在范围内的不作统计。
* @author Cshuang
*
*/

public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while(in.hasNext()){
int[] arr = new int[128];//定义数组的长度,限制了ascii码的范围,默认里面的每个元素为0
String str = in.nextLine();
for (int i = 0; i < str.length(); i++)
arr[str.charAt(i)]=1;//字符ascii超过128,会存不进去
int cnt = 0;
for (int i = 0; i < arr.length; i++) {
if(arr[i] ==1)//只要数组中不为0,则说明有一种元素
cnt ++;
}
System.out.println(cnt);
}
in.close();
}
}