0
点赞
收藏
分享

微信扫一扫

【java华为机试】HJ10 字符个数统计

ivy吖 2022-03-11 阅读 60

描述

编写一个函数,计算字符串中含有的不同字符的个数。字符在 ASCII 码范围内( 0~127 ,包括 0 和 127 ),换行表示结束符,不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次

例如,对于字符串 abaca 而言,有 a、b、c 三种不同的字符,因此输出 3 。

数据范围: 1 \le n \le 500 \1≤n≤500 

输入描述:

输入一行没有空格的字符串。

输出描述:

输出 输入字符串 中范围在(0~127,包括0和127)字符的种数。

import java.util.Arrays;
import java.util.Collections;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		// 1、对输入的内容进行遍历解析
		while (sc.hasNextLine()) {
			String str = sc.nextLine();
			// 2、先将输入的内容转换成字符串
			char[] array = str.toCharArray();
			// 3、做一次排序
			Arrays.sort(array);
			// 4、将第一个值记一次1,对比是从第二值开始的
			int count = 1;
			// 5、通过前后字符对比,找出不同值,出现一次和前一个值不相同,则+1
			for (int i = 1; i < array.length; i++) {
				if ((array[i] + 0) > (array[i - 1] + 0)) {
					count++;
				}
			}

			System.out.println(count);

		}

	}
}

举报

相关推荐

0 条评论