首页 > 学院 > 开发设计 > 正文

根据18位身份证号,提取出此人的出生年月日,

2019-11-08 19:30:39
字体:
来源:转载
供稿:网友

根据18位身份证号,提取出此人的出生年月日,

package sun.rain.amazing;import java.util.Date;import org.junit.Test;/** * 根据18位身份证号,提取出此人的出生年月日, * 并判断此人今年的年龄、性别 * @author sunRainAmazing * */public class StringIdentity { public static String STR1 = "000026192504286365";//1125-04-28 public static String STR2 = "00002619250520635X";//1125-05-20 /** * 对应的年份为区间为[6,10) */ @Test public void getAge(){ Date date = new Date(); String s1 = date.toString(); System.out.PRintln(s1);// String year = (String) s1.subSequence(s1.length()-4, s1.length()); String year = s1.substring(s1.length()-4, s1.length());// String str = STR1.substring(6,10); int birthTime = Integer.parseInt(STR1.substring(6,10)); int nowTime = Integer.parseInt(year); int realAge = nowTime - birthTime; System.out.println("这个人的年龄为:"+realAge); } /** * 身份证的倒数第二位 代表性别 奇数男 偶数女 */ @Test public void testIsMale(){// int number = Integer.parseInt(STR1.substring(16,17));// System.out.println(number);// if(isMale(number)){// System.out.println("此人是男生");// }else{// System.out.println("此人是女生");// } System.out.println( isMale(Integer.parseInt(STR1.substring(16,17)))?"男生":"女生"); } /** * 返回 true 代表是男生 * 返回 false 代表是女生 * @param number * @return */ private static boolean isMale(int number){ return number%2==0?false:true; }}
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表