import java.util.Scanner;
public class yy{
public static void main(String[] args) {
String id;//定义String类
String year;
Scanner input = new Scanner(System.in);//输入语句
System.out.println("请输入学号");
id = input.nextLine();//把身份证号码定义为字符串,使用String方法
boolean result=id.matches("[0-9]+");//正则表达式判断输入是否为0到9的字符串输入错误就停止运行
//matches()是Java中的字符串方法之一,它用于检查一个字符串是否完全匹配某个模式。这个方法通常与正则表达式(Regular Expression)一起使用,在String对象上调用,如果字符串与给定的正则表达式相匹配,该方法返回true,否则返回false。
//使用布尔值来作为判断条件
if((id.length()==12)&&result){
//定义身份证号长度如果输入的数字不是12个或者输入的不是数字停止运行
year = id.substring(0,4);
//使用字符串substring,substring(startIndex, endIndex):返回一个字符串在开始索引startIndex到结束索引endIndex(不包括该索引位置的字符)之间的子字符串。
if((Integer.parseInt(year)>=1990&&Integer.parseInt(year)<=2022)){
//Integer.parseInt()是一个用于将字符串转换为整数的方法。
System.out.println("入学年份是"+year);
}else {
System.out.println("您输入的学号入学年份"+year+"有误!");
}
}else {
System.out.println("您输入的学号不是12位或不是全数字!");
}
}
}
输入学号判断入学时间
于 2024-08-16 21:14:07 首次发布