身份证信息查看
- 规则:已知身份证号,输出样例为:
人物信息为:
出生年月日:XXXX年X月X日
性别为:男/女 - 分析:
1,2位:省份
3,4位:城市
5,6位:区县
7-14位:出生年、月、日
15,16位:所在地派出所
17位:性别(奇数男性,偶数女性)
public class FTest {
public static void main(String[] args) {
/*
* 身份证信息查看
* 规则:已知身份证号,输出样例为:
* 人物信息为:
* 出生年月日:XXXX年X月X日
* 性别为:男/女
* 分析:
* 1,2位:省份
* 3,4位:城市
* 5,6位:区县
* 7-14位:出生年、月、日
* 15,16位:所在地派出所
* 17位:性别(奇数男性,偶数女性)
* */
//1.定义一个字符串记录身份证号码
String id = "321281202001081234";
System.out.println("人物信息为:");
//2.获取出生年月日
String year = id.substring(6,10); //截取[6,10)片段赋值给year
String month = id.substring(10,12);
String day = id.substring(12,14);
System.out.println("出生年月日:" + year + "年" + month + "月" + day + "日");
//3.获取性别
char gender = id.charAt(16); //获取第16位的字符
// 因为字符参与运算时,会先转换为ASCII码再运算。所以可知'0'-----> 48
// int n = '0' - 0;
// System.out.println(n);
//可以利用ASCII码来将字符gender转换为int的数字
int num = gender - 48;
if (num % 2 == 0){
System.out.println("性别为:女");
}else{
System.out.println("性别为:男");
}
}
}