Linux安全网 - Linux操作系统_Linux 命令_Linux教程_Linux黑客

会员投稿 投稿指南 本期推荐:
搜索:
您的位置: Linux安全网 > Linux编程 > » 正文

根据员工入职时间和合同期计算下一次合同签订时间

来源: 未知 分享至:
 1 import java.text.SimpleDateFormat;
2 import java.util.Calendar;
3 import java.util.Date;
4 import java.util.GregorianCalendar;
5 import java.util.Scanner;
6
7 public class ContractDate {
8
9 /**
10 * @param args
11 * 2 根据员工入职时间和合同期计算下一次合同签订时间
12 * a 入职时间为指定格式字符串
13 * b 合同期单位为月
14 * c下次合同签订时间为到期前一个月份的工作日(遇到周六,周日顺延到下周一)
15 * d 返回值为指定格式的字符串
16 * @throws Exception
17 */
18 public static void main(String[] args) throws Exception {
19 // TODO Auto-generated method stub
20 Scanner console = new Scanner(System.in);
21 System.out.println(\"请输入入职时间:\");
22 String str = console.nextLine();
23
24 Scanner sc = new Scanner(System.in);
25 System.out.println(\"请输入合同期(单位:月):\");
26 int contractMonths = sc.nextInt();
27 String exp = agreement(str, contractMonths);
28 System.out.println(\"签订日期为:\" + exp);
29 }
30
31 public static String agreement(String str, int contractMonths)
32 throws Exception {
33 SimpleDateFormat sdf = new SimpleDateFormat(\"yyyy-MM-dd\");
34 // 将字符串形式的日期转化为Date格式的日期
35 Date d = sdf.parse(str);
36 Date date = expDate(d, contractMonths);
37 String exp = sdf.format(date);
38 return exp;
39 }
40
41 @SuppressWarnings(\"unused\")
42 public static Date expDate(Date entryDay, int months) {
43 Calendar cal = new GregorianCalendar();
44 cal.setTime(entryDay);
45 cal.add(Calendar.MONTH, months);
46 cal.add(Calendar.MONTH, -1);
47 //测试 合同到期前一个月的日期为一个星期的第几天
48 System.out.println(cal.get(Calendar.DAY_OF_WEEK));
49 int dayOfWeek=cal.get(Calendar.DAY_OF_WEEK);
50 //

Tags:
分享至:
最新图文资讯
1 2 3 4 5 6
验证码:点击我更换图片 理智评论文明上网,拒绝恶意谩骂 用户名:
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 发展历史