概述
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
String string = "H e l l o ! n o w c o d e r";
Scanner scanner= new Scanner(System.in);
String word = scanner.next();
scanner.close();
System.out.println(check(string, word));
}
public static int check(String str, String word) {
//write your code here......
}
}
解法一
str.length() 用来获取字符串中字符的个数,包括空格符。
str.replace(word, “”) 的作用是将字符串中指定字符移除。
str.replace(word, “”).length() 是移除指定字符后的字符串长度。
所以 str.length() - str.replace(word, “”).length() 就是原字符串中指定字符的个数。
public static int check(String str, String word) {
//write your code here......
return str.length() - str.replace(word, "").length();
}
解法二
遍历字符串,将输入的字符和字符串的每个字符进行比较,如果相同,则count++
str.charAt() 用于返回字符串中指定索引处的字符。
由于输入的字符用 String 类型保存而不是 Char 类型,所以需要用 word.charAt(0) 获取该字符 (charAt() 得到的是字符类型)。
private static int check2(String str, String word) {
//write your code here......
int count = 0;
for (int i = 0; i < str.length(); i++) {
if(str.charAt(i) == word.charAt(0)){
count++;
}
}
return count;
}
解法三
遍历字符串,将每个字符转成 String 类型,然后通过 equals 和 输入的字符 (题目中输入的字符使用 String 来保存) 进行比较,一样则count++
public static int check(String str, String word) {
//write your code here......
int count = 0;
for (int i = 0; i < str.length(); i++) {
if(word.equals(str.charAt(i)+"")){
count++;
}
}
return count;
}
解法四 (不推荐)
将字符串中的每个字符保存 ArrayList 集合中,然后通过 Collections 类的 frequency 方法来获取指定元素的个数. ( frequency(Collection<?> c, Object o)主要用来获取指定集合中指定元素的个数 )
public static int check(String str, String word) {
//write your code here......
ArrayList list = new ArrayList<Character>();
for (int i = 0; i < str.length(); i++) {
list.add(str.charAt(i));
}
return Collections.frequency(list, word.charAt(0));
}
最后
以上就是深情季节为你收集整理的统计字符串中字母出现次数的全部内容,希望文章能够帮你解决统计字符串中字母出现次数所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复