上机题-字符个数统计

来源:互联网 发布:dota 数据 编辑:程序博客网 时间:2024/05/16 23:38

题目描述

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


输入描述:
* 输入N个字符,字符在ACSII码范围内(0~127)。

输出描述:
* 输出字符的个数。

输入例子:
* abc

输出例子:
* 3


算法实现:

方法描述:

import java.util.HashMap;import java.util.Map;import java.util.Scanner;public class Main {    public static void main(String[] args)    {        //统计字符串中不同字符个数              Scanner sc=new Scanner(System.in);        while (sc.hasNext())        {            String input=sc.nextLine();            if (input==null)            {                return;            }            int count=0;            Map<Integer,Character> hm=new HashMap<Integer, Character>();            for (int i = 0; i < input.length(); i++)            {                if (!hm.containsValue(input.charAt(i)))                {                    count++;                    hm.put(i, input.charAt(i));                }            }            System.out.println(count);        }       }}

运行结果:

-> 12333-> 3


拓展:

  1. 分别统计字符串的数字、字母、空格和其他字符(包括汉字、标点符号)的个数,并计算字符串的总个数。

  2. 统计字符串中不同字符个数。

0 0