7-10位代表身份证持有人的出生年份; 11-12位代表身份证持有人的出生月份; 13-14位代表身份证持有人的出生当月日期; 15-18位代表身份证持有人在当地的顺序码,其中奇数为男、偶数为女
subString(初始位置的下标,终点位置的下标)
object Test_1125 {
def main(args: Array[String]): Unit = {
val id = "42032220080903332x"
//1.生日是?
//字符串截取
val birthday = id.substring(10, 14) //字符串截取下标
println(s"生日是:${birthday}")
//2.哪一年出生的
val year = id.substring(6, 10)
println(s"生日是:${year}")
//3.性别:倒数第二位
//如果是偶数:女生 如果是奇数:boy
val gender = id.substring(16, 17)
//val gender=id(16)
if (gender.toInt % 2 == 0) {
println("性别是:女生")
}
else {
println("性别是:男生")
}
//4.前两位表示省份
val province = id.substring(0, 2).toInt
val m1 = Map((41, "河南"), (42, "湖北"), (43, "湖南"), (44, "广东"))
println(s"籍贯是:${m1.get(province)}")
}
// if(province==42)
}
输出如下