Java 计算单词中字符的频率

Java 计算单词中字符的频率,java,string,Java,String,Raji想计算给定字符的出现次数。编写一个程序来接受用户的一个单词。从用户处获取一个字符并查找出现次数 检查给定的字符和单词是否有效 如果单词只包含字母,没有空格或任何特殊字符或数字,则该单词有效 如果该字符仅为字母表,则该字符有效 示例输入1: 输入一个单词: 程序设计 输入字符: m 样本输出1: 给定单词中“m”的数量为2 样本输入2: 输入一个单词: 程序设计 输入字符: 样本输出2: 给定的单词中不存在给定的字符“s” 样本输入3: 输入一个单词: 56 样本输出3: 不是有效的字符

Raji想计算给定字符的出现次数。编写一个程序来接受用户的一个单词。从用户处获取一个字符并查找出现次数

检查给定的字符和单词是否有效

如果单词只包含字母,没有空格或任何特殊字符或数字,则该单词有效

如果该字符仅为字母表,则该字符有效

示例输入1: 输入一个单词: 程序设计 输入字符: m

样本输出1:

给定单词中“m”的数量为2

样本输入2: 输入一个单词: 程序设计 输入字符:

样本输出2:

给定的单词中不存在给定的字符“s”

样本输入3: 输入一个单词: 56 样本输出3:

不是有效的字符串

示例输入4: 输入一个单词: 你好 输入字符: 六,

样本输出4:

给定的字符不是字母表

我收到一个错误: 失败的测试:
测试3:当字符不存在且单词大写时,检查逻辑。我认为这会起作用。虽然我无法通过一个测试用例,但请随意尝试,它可能对您有用

import java.util.*;
public class OccurrenceOfChar{
   public static void main (String[] args) {
          Scanner in = new Scanner(System.in);
          int n[] = new int[]{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},flag=0;
          System.out.println("Enter a word:");
          String input = in.nextLine();
          input=input.toLowerCase();
          for(int i=0;i<input.length();i++){
        if(((int)input.charAt(i)-97)<0 || ((int)input.charAt(i)-97)>25){
            flag=1;
        }
        else{
            n[(int)input.charAt(i)-97]++;
        }
    }
    if(flag==1){
        System.out.println("Not a valid string");
    }
    else{
        System.out.println("Enter the character:");
        String t = in.nextLine();
        String s=t.toLowerCase();
        if(((int)s.charAt(0)-97)<0 || ((int)s.charAt(0)-97)>25){
            System.out.println("Given character is not an alphabet");
        }
        else{
            if(n[(int)s.charAt(0)-97]>0){
                System.out.println("No of\'"+s+"\' present in the given word is "+n[(int)s.charAt(0)-97]+".");
            }
            else{
                System.out.println("The given character \'"+s+"\' not present in the given word.");
            }
        }
    }
}
import java.util.*;
公共类发生率{
公共静态void main(字符串[]args){
扫描仪输入=新扫描仪(系统输入);
int n[]=新int[]{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},flag=0;
System.out.println(“输入一个单词:”);
字符串输入=in.nextLine();
input=input.toLowerCase();
对于(int i=0;i0){
System.out.println(“给定单词中出现的\'”+s+“\”的数量为“+n[(int)s.charAt(0)-97]+”);
}
否则{
System.out.println(“给定的字符\'”+s+“\”不存在于给定的单词中。”);
}
}
}
}

}

我认为这会奏效。虽然我无法通过一个测试用例,但请随意尝试,它可能对您有用

import java.util.*;
public class OccurrenceOfChar{
   public static void main (String[] args) {
          Scanner in = new Scanner(System.in);
          int n[] = new int[]{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},flag=0;
          System.out.println("Enter a word:");
          String input = in.nextLine();
          input=input.toLowerCase();
          for(int i=0;i<input.length();i++){
        if(((int)input.charAt(i)-97)<0 || ((int)input.charAt(i)-97)>25){
            flag=1;
        }
        else{
            n[(int)input.charAt(i)-97]++;
        }
    }
    if(flag==1){
        System.out.println("Not a valid string");
    }
    else{
        System.out.println("Enter the character:");
        String t = in.nextLine();
        String s=t.toLowerCase();
        if(((int)s.charAt(0)-97)<0 || ((int)s.charAt(0)-97)>25){
            System.out.println("Given character is not an alphabet");
        }
        else{
            if(n[(int)s.charAt(0)-97]>0){
                System.out.println("No of\'"+s+"\' present in the given word is "+n[(int)s.charAt(0)-97]+".");
            }
            else{
                System.out.println("The given character \'"+s+"\' not present in the given word.");
            }
        }
    }
}
import java.util.*;
公共类发生率{
公共静态void main(字符串[]args){
扫描仪输入=新扫描仪(系统输入);
int n[]=新int[]{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},flag=0;
System.out.println(“输入一个单词:”);
字符串输入=in.nextLine();
input=input.toLowerCase();
对于(int i=0;i0){
System.out.println(“给定单词中出现的\'”+s+“\”的数量为“+n[(int)s.charAt(0)-97]+”);
}
否则{
System.out.println(“给定的字符\'”+s+“\”不存在于给定的单词中。”);
}
}
}
}
}
导入java.util.*;
导入java.util.regex.Pattern;
公共类发生率
公共静态整数计数(字符串s,字符c)
{ 
int res=0;
对于(inti=0;i
importjava.util.*;
导入java.util.regex.Pattern;
公共类发生率
公共静态整数计数(字符串s,字符c)
{ 
int res=0;

对于(int i=0;i)您尝试了什么,在哪里卡住了?您能够编写什么代码?您尝试了什么,在哪里卡住了?您能够编写什么代码?