700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > java date 转换calendar_Java中日期格式(String Date Calendar)的相互转换

java date 转换calendar_Java中日期格式(String Date Calendar)的相互转换

时间:2021-10-21 14:41:49

相关推荐

java date 转换calendar_Java中日期格式(String Date Calendar)的相互转换

1 packageday0318;2

3 importjava.text.ParseException;4 importjava.text.SimpleDateFormat;5 importjava.util.Calendar;6 importjava.util.Date;7 importjava.util.Scanner;8 /**

9 * 计算商品保质期并计算优惠时间10 *@authorAdministrator11 *12 */

13 public classProCalendarDemo {14

15 public static void main(String[] args) throwsParseException {16 SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");17 Scanner input=newScanner(System.in);18 System.out.print("请输入商品的生产日期:");19 String proc=input.next();20 System.out.print("请输入商品的保质期(月):");21 int exp=input.nextInt();22 Date sellDate=specialDay(sdf.parse(proc),exp);23 System.out.println("商品的促销日期为:"+sdf.format(sellDate));24 }25 public static Date specialDay(Date proc,intexp){26 Calendar proCal=Calendar.getInstance();//创建Calendar对象

27 proCal.setTime(proc);//将时间设置为商品的生产日期28 //计算出商品的保质期

29 proCal.add(Calendar.MONTH,exp);30 //将时间提前两个星期

31 proCal.add(Calendar.WEEK_OF_MONTH, -2);32 //将促销的时间设置到本周星期五

33 proCal.set(Calendar.DAY_OF_WEEK,Calendar.FRIDAY);34 returnproCal.getTime();35 }36 }

1 packageday0318;2

3 importjava.util.Calendar;4 /**

5 * 日期处理6 *@authorAdministrator7 *8 */

9 public classCalendarDemo {10

11 public static voidmain(String[] args) {12 //创建Calendar对象

13 Calendar now=Calendar.getInstance();14 now.set(Calendar.MONTH,4);15 //获取月份

16 int m=now.get(Calendar.MONTH);17 System.out.println(m);18 //Calendar计算

19 now.add(Calendar.MONTH,3);//增加月份数

20 int n=now.get(Calendar.MONTH);21 System.out.println(n);22 System.out.println(now.getTime());23 }24

25 }

1 packageday0318;2

3 importjava.text.ParseException;4 importjava.text.SimpleDateFormat;5 importjava.util.Date;6 /**

7 * 日期字符串格式化,字符串转换为日期8 *@authorAdministrator9 *10 */

11 public classSdfDateDemo {12

13 public static void main(String[] args) throwsParseException {14 Date now=newDate();15 //创建日期格式化对象

16 SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");17 String dateInfo=sdf.format(now);18 System.out.println(dateInfo);19 //将日期的字符串转换为date

20 SimpleDateFormat adf=new SimpleDateFormat("yyyy/MM/dd hh:mm:ss");21 Date date=adf.parse("/05/04 10:30:12");22 System.out.println(date);23 }24

25 }

如果想要直接获取系统时间的话,这里提供一种较常用的实现方法:

import java.util.Date;

import java.text.SimpleDateFormat;

public class NowString {

public static void main(String[] args) {

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式

System.out.println(df.format(new Date()));// new Date()为获取当前系统时间

}

}

另附上一道思考题:

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

a.入职日期为指定格式字符串。yyyy-MM-dd

b.合同期单位为月

c.签订合同日期为到期前前一个月份的工作日(遇到周六、日顺延到下周一)

d.返回制定格式的字符串。 yyyy/MM/dd。

下面是我的想法:

1 packageday0318;2

3 importjava.text.ParseException;4 importjava.text.SimpleDateFormat;5 importjava.util.Calendar;6 importjava.util.Date;7 importjava.util.Scanner;8

9 public classStaffContract {10

11 public static void main(String[] args) throwsParseException {12 SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");13 Scanner input=newScanner(System.in);14 System.out.print("请输入签订合同时间:");15 String startCal=input.next();16 System.out.print("请输入合同期(月):");17 int month=input.nextInt();18 Date sellDate=SpecialDay(sdf.parse(startCal),month);19 System.out.println("续签合同日期为:"+sdf.format(sellDate));20 }21 public static Date SpecialDay(Date start,intmonth){22 //调用工厂方法

23 Calendar startCal=Calendar.getInstance();24 startCal.setTime(start);25 startCal.add(Calendar.MONTH,month);26 startCal.add(Calendar.MONTH,-1);27 if(startCal.get(Calendar.DAY_OF_WEEK)==Calendar.SATURDAY){28 startCal.add(Calendar.DAY_OF_WEEK,+2);29 returnstartCal.getTime();30 }else if(startCal.get(Calendar.DAY_OF_WEEK)==Calendar.SUNDAY){31 startCal.add(Calendar.DAY_OF_WEEK, +1);32 returnstartCal.getTime();33 }else

34 returnstartCal.getTime();35 }36 }

思维导图:

日期符号格式:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。