2024美团秋招第一场笔试

解题思路:

首先,根据题目可以,要输入n,n表示一共要输入的字符串个数,我们将所有的字符串用字符串数组来存储,然后遍历每一个字符串集合。

接着:在遍第几个字符串时判断该字符串具体属于哪一种分类。因此,我们需要定义一个方法,传递给它字符串参数,判断它是属于那一分类的。

在这个方法中,我们要取出字符串的第一个字符,判断它是字母还是数字,这里就会用到java中的类Character中的函数:substring()切割字符串、matches(str)字符串匹配函数、isDigit(str)判断数字函数以及isLetter(str)判断字母函数。

下面看具体的Java代码:

package jxkjsfdx.lgq;

import java.util.Scanner;

public class Demo02 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        // 输入字符串个数n
        int n = sc.nextInt();
        String[] strings = new String[n];

        // 录入字符串
        for (int i = 0; i < n; i++) {
            strings[i] = sc.next();
        }

        // 判断字符串属于哪一种分类
        for (int i = 0; i < strings.length; i++) {
            String strClassify = strClassify(strings[i]);
            System.out.println(strClassify);
        }
    }

    private static String strClassify(String strings) {
        // 首先获取字符串的首个字符
        char firstChar = strings.charAt(0);
        String rest_strings = strings.substring(1, strings.length());

        if (Character.isLetter(firstChar)){
            // 首字符是字母
            if (rest_strings.matches("\\d*")){
                // 此时属于第一种分类情况:如果ID以字母开头,并且字母后面的字符全是数字,则属于“standard”。
                return "standard";
            }else if (rest_strings.matches(".*\\d.*") & rest_strings.matches(".*[a-zA-Z].*")){
                // 此时属于第三种情况:如果ID以字母开头,并且字母后面的字符同时包含字母和数字,则属于“mix”。
                return "mix";
            }
        }else if (Character.isDigit(firstChar)){
            // 首字符是数字
            if (rest_strings.matches("[a-zA-Z]*")){
                return "special";
            }
            }else {
                // 首字符既不是字母也不是数字
                return "invalid";
            }
        // 其他情况均返回invalid
        return "invalid";
    }
}

全部评论

相关推荐

兄弟们,实习都是在接各种api,该怎么包装简历
仁者伍敌:感觉我自己做小项目也是各种api啊,我要怎么包装简历
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-07 13:47
点赞 评论 收藏
分享
07-07 12:47
门头沟学院 Java
码农索隆:竟然还真有卡体检报告的
点赞 评论 收藏
分享
05-16 11:16
已编辑
东华理工大学 Java
牛客73769814...:盲猜几十人小公司,庙小妖风大,咋不叫她去4️⃣呢😁
牛客创作赏金赛
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务