根据生产日期和保质期计算食品过期日期

releaseDate表示食品出厂日期,day表示保质期,计算食品的过期日期,格式为yyyy-mm-dd。

日期处理类::
            a、java.util.Date类:public Date()   public Date(long date)  public long getTime()
                    可实现long类型数据与Date类之间的转换
            b、java.text.SimpleDateFormat类:可实现Date与String类之间的转换
            c、java.util.calendar类:可以分别取得日期时间数字,这样可以进行各种日期时间的计算操作

 

  1. 将传入的表示出场日期的字符串通过SimpleDateFormat转换成Date类型数据;
  2. 通过calendar的setTime方法将这个Date类型数据设置为calendar类对象的时间。
  3. 运用calendar的get方法得到给定日历字段的值
  4. 将这个值与保质期的值相加,利用calendar的set方法重新设置给calendar
  5. 通过calendar的getTime方法返回calendar时间值的日期对象。
  6. 通过SimpleDateFormat将日期对象转换成字符串
import java.util.Calendar;
import java.util.Date;
import java.security.NoSuchAlgorithmException;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;

public class Task {
	
	public String getDate(String releaseDate,int day){
		
			DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
			Calendar calendar = Calendar.getInstance();//获取当前时间
			 
			Date d = new Date () ;			
			try{
			     calendar.setTime(df.parse(releaseDate));//字符串转日期,再设置calendar的时间
			}catch(ParseException e){
			    e.printStackTrace();
			}
                        //calendar.add(Calendar.DATE, day);//这句话可以替代下面的两行
			int day1 = calendar.get(Calendar.DAY_OF_YEAR);//返回给定日历字段的值
			calendar.set(Calendar.DAY_OF_YEAR, day1 + day );//将给定的日历字段设置为给定值
			d= calendar.getTime();//返回表示calendar的时间值的 Date 对象			  
			String  date = df.format(d);//日期转字符串
              	
			return date;
	}		
}

猜你喜欢

转载自blog.csdn.net/qq_38635681/article/details/83503330