检查字符串是否包含某些接受参数 String 的元素的方法

Method to check if the string contains certain elements that accepts a parameter String

我是一名学生,对 Java 有点陌生。对于我的家庭作业,我必须:

字必须:

  1. 以大写字母开头
  2. 以数字结尾
  3. 包含单词“cse”。

我被要求在一些代码作业中创建一个方法来完成特定任务,该方法应该检查所有必需的条件,方法的名称应该是 countTestit接受字符串作为参数.

我会告诉你我的代码,但我不知道如何创建这个特定的方法。


输出格式

System.out.println("There as a total number of words " + count + " and 
the ones that fulfill the condition are: " + condition);

问题是,我不知道如何创建方法或构造函数或调用其中所有 3 个方法的调用方法,然后将该特定方法连接到 main 方法! 希望大家能理解我是新手,先谢谢了!

public class D6_6 {
    public static void main(String[]args){
        Scanner sc = new Scanner(System.in);
        System.out.println("Type a number that is at least 7");
        int number = sc.nextInt();
        int count = 0;
        int condition = 0;
        do{
            if(number<7){
                System.out.println("You should type a number that is at least 7 or higher");
                number = sc.nextInt();
            }

        }
        while(number<7);
        sc.nextLine();
        String str;
        for(int i =0; i<number; i++){
            System.out.println("Type a word");
            str = sc.nextLine();
            count++;
        }
    }
    public boolean countTest(String str)    {

}```
  1. 检查单词是否以大写开头: 您可以先通过 str.charAt(0) 选择要检查的字符来做到这一点。这将 return 一个字符,它是输入 str.
    的第一个字母 要检查此字符是否为大写字母,您可以轻松地使用 char.isUppercase()。这将 return 一个布尔值。如果将 str.charAt(0) 的字符放入 char 中,则必须用变量名称替换 char

  2. 检查最后一个字符是否为数字: 您可以再次选择最后一个字符 str.charAt(str.length()-1),其中 string.length-1 是最后一个字符的编号。
    要检查此字符是否为数字,可以使用 ascii table。每个角色都有自己的编号。所以如果你想检查你的字符是否在 0 到 9 之间,你可以使用 char >= 48 || char <= 57(在 ascii table 中查找)。同样,char 是您将 str.charAt(str.length()-1) 的字符放入其中的变量名称。

  3. 检查单词是否包含“cse”: 有一个非常简单的方法:str.contains("cse") 将 return 一个布尔值,当“cse”在单词中时为真,当单词不包含“cse”时为假。

希望你现在清楚了!

我想我做到了,非常感谢你们,我很感激!

public class D6_6 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("Type a number that is at least 7");
        int number = sc.nextInt();
        int count = 0;
        int condition = 0;
        do {
            if (number < 7) {
                System.out.println("You should type a number that is at least 7 or higher");
                number = sc.nextInt();
            }

        }
        while (number < 7);
        sc.nextLine();
        String str;
        for (int i = 0; i < number; i++) {
            System.out.println("Type a word");
            str = sc.nextLine();
            count++;
            if((countTest(str))){
                condition++;

            }
        }
        if(count == 0){
            System.out.println("No words typed");
        } else {
            System.out.println("Total number of words typed: " + count + ", which fulfill the condition: "+ condition);
        }
    }

    public static boolean countTest(String str) {
        return Character.isUpperCase(str.charAt(0)) && str.charAt(str.length() - 1) >= 48 || str.charAt(str.length() - 1) <= 57 || str.contains("cse");
    }

}```