A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 smile_joe 于 2013-4-22 21:02 编辑

package cn.joe;

import java.util.Calendar;
import java.util.Scanner;

public class Test2 {

        /**
         * @param args
         */
        public static void main(String[] args) {
                getAge();
               
        }

        private static void getAge() {
                // TODO Auto-generated method stub
                Scanner sc=new Scanner(System.in);
                System.out.println("請輸入一個身份證號碼:");
                String s=sc.nextLine();
               
                String s1=s.substring(6, 10);//得到6-10字符,不包括10
                String s2=s.substring(10, 12);//得到10-12字符不包括12
                String s3=s.substring(12, 14);//得到12-14字符不包括14
               
//                包裝類方法把字符轉換成int基本類型
                int i1=Integer.parseInt(s1);
                int i2=Integer.parseInt(s2);
                int i3=Integer.parseInt(s3);
               
//                新建一個當前日曆
                Calendar c=Calendar.getInstance();
                //給c日曆設置年/月/日
                c.set(i1, i2-1, i3);
               
//                再新建一個當前日曆
                Calendar c1=Calendar.getInstance();
//                System.out.println(c1);
//                當前時間毫秒值減去身份證的時期得到的值/一天的毫秒值
                System.out.println((c1.getTimeInMillis()-c.getTimeInMillis())/(24*3600*1000));
        }

        

}
做的方法怎么感觉很麻烦啊,
帮忙看看能不能更优化?

3 个回复

正序浏览
亮了!版主 {:soso_e141:}
回复 使用道具 举报
如果问题未解决,请继续追问,如果问题解决了,请将问题分类改为“已解决”,谢谢
回复 使用道具 举报
这段代码你发了好几次了,没人顶贴听不爽的,哥们在学习繁体字嘛
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马