1. 题目
字符个数统计_牛客网www.nowcoder.com2. 描述
编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127),换行表示结束符,不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次 输入
abaca 输出
3 输入描述:
输入N个字符,字符在ACSII码范围内。
输出描述:
输出范围在(0~127)字符的个数。
示例1 输入
abc 输出
3
3. 实现方法
3.1 方法 1
3.1.1 思路
- 初始化一个列表
list
用于存放字符串中的不重复的字符; - 遍历字符串,
list
未出现的字符加入,已经出现过的字符则跳过; - 返回列表长度即为最终结果;
3.1.2 实现
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
/**
* @author : cunyu
* @version : 1.0
* @className : Ten
* @date : 2020/8/10 23:56
* @description : 10. 字符个数统计
*/
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
while (input.hasNext()) {
String str = input.nextLine();
System.out.println(countChar(str));
}
}
/**
* @param str 输入的字符串
* @return
* @description 计算 ASCII 范围内字符个数
* @date 2020/8/11 0:02
* @author cunyu1943
* @version 1.0
*/
public static int countChar(String str) {
List<Character> list = new ArrayList<>();
for (int i = 0; i < str.length(); i++) {
if (list.contains(str.charAt(i))) {
continue;
} else {
list.add(str.charAt(i));
}
}
return list.size();
}
}
![51128760be2031083da2b3698408ccb5.png](https://i-blog.csdnimg.cn/blog_migrate/6596a656dc7585b76c623664bbeb2b2b.jpeg)