小方法1——CountChar--统计一个字符串中每个字符出现的次数

/*
 * 统计一个字符串中每个字符出现的次数
 * 主要知识点:
 * 1.Character类的一个方法:isLetter(string),判断是否为字符
 * 2.String 类的方法:toLowerCase()
 * 3.字符与整形的混合运算
 * */
import java.util.Scanner;

public class CountChar {
	public static void main(String[] abc) {
		// 首先提示输入一个字符串
		System.out.println("Please enter a string :");

		// 然后构造扫描器
		Scanner input = new Scanner(System.in);
		
		// 声明字符串变量接收输入的内容,并转成小写
		String str = input.nextLine().toLowerCase();
		
		int[] count = countLeter(str);		// 调用统计方法
		print(count);						// 调用打印方法
		
	}
	//打印方法:将出现的字符打印
	private static void print(int[] count) {
		for (int i = 0; i < count.length; i++) {
			if (count[i] != 0) {
				String time = count[i]==1 ? "time" :"times";
				System.out.println((char)('a' + i) + "  appears  " + count[i] +time);
			}
		}		
	}

	// 统计一个字符串中某个字母出现次数的方法
	private static int[] countLeter(String str) {
		int[] counts = new int[26];		//存放每个字母出现的次数的计数器
		for (int i = 0; i < str.length(); i++) {
			//如果str的第i位是个字符,那么该字母对应位置的计数器自增
			if (Character.isLetter(str.charAt(i))) {
				counts[str.charAt(i) - 'a']++;
			}
		}
		return counts;
	}	
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值