Java黑皮书课后题第6章:*6.23(指定字符的出现次数)使用下面的方法头编写一个方法,找到一个字符串中指定字符的出现次数。编写一个测试程序,提示用户输入一个字符串以及一个字符,显示该字符出现次数

6.23(指定字符的出现次数)使用下面的方法头编写一个方法,找到一个字符串中指定字符的出现次数。编写一个测试程序,提示用户输入一个字符串以及一个字符,显示该字符出现次数

  • 题目
    • 题目描述
    • 破题
  • 代码
    • 运行实例

题目

题目描述

6.23(指定字符的出现次数)使用下面的方法头编写一个方法,找到一个字符串中指定字符的出现次数:
public static int count(String str, char a)
例如,count(“Welcome”, ‘e’)返回2
编写一个测试程序,提示用户输入一个字符串以及一个字符,显示该字符出现次数

破题

  1. 主方法:接收用户输入的字符串str与指定字符a,将其传入count方法,输出count方法返回的值(即a在str出现的次数)
  2. count方法:接收字符串str与字符a后,将字符串逐个转为ASCII码,与字符a的ASCII进行比较,比较成功计数变量自增1,最后返回计数变量

代码

import java.util.Scanner;public class Test6_23 {public static void main(String[] args) {// 接收用户输入的字符串str与指定字符aScanner input = new Scanner(System.in);System.out.print("字符串:");String str = input.nextLine();System.out.print("字符a:");String a_str = input.next();char a = (char) a_str.charAt(0);// 传入count方法并接收返回值int feedback = count(str, a);// 打印结果System.out.println(a + "在str中出现了" + feedback + "次");}public static int count(String str, char a){// 将字符a转为ASCIIint a_ASCII = (int) a;// 逐个与str比较int length = str.length(), str_ASCII = -1, feedback = 0;for (int i = 0; i < length; i++){str_ASCII = (char) (str.charAt(i));if (a_ASCII == str_ASCII)feedback++;}// 返回次数return feedback;}
}

运行实例

字符串:a1b2b3
字符a:b
b在str中出现了2


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部