package test_30
//1.toInt把字符串转成整数
object test {
def main(args: Array[String]): Unit = {
val id="420923200209145648"
//1.生日是?
//字符串汲取
val birthday=id.substring(10,14)//不包括终点下标
println(s"生日是:${birthday}")
val year=id.substring(6,10)//6,7,8,9这个下标
println(s"年份是:${year}")
//性别:倒数第二位
// 如果是奇数:boy,偶数:girl
val gender =id.substring(16,17)
println(gender)
if (gender.toInt % 2==0) {
println("性别是:女生")
}else{
println("性别是:男生")
}
//前两位表示省份
val province=id.substring(0,2).toInt
val m1 = Map((41,"河南"),(42,"湖北"),(43,"湖南"),(44,"广东"))
println(s"籍贯是:${m1.get(province)}")
//验证身份证号码是否合法?
//每一位的权重
val weights=Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2)
val checkCodes="10x98765432"
var sum=0
for (i<-0 to 16){
sum+=id(i).toInt*weights(i)
}
if(id.charAt(17)==checkCodes.charAt(sum%11)) {
println(s"身份证号${id}是合法的")
}else{
println(s"身份证号${id}是不合法的")
}
}
}
838

被折叠的 条评论
为什么被折叠?



