A. java 时间相加问题
publicclassClock{
privateinthour;
privateintmin;
privateintsecond;
publicClock(inthour,intmin,intsecond){
this.hour=hour;
this.min=min;
this.second=second;
}
publicvoidadd(Clockclock){
intse=this.getSecond()+clock.getSecond();
intmin=this.getMin()+clock.getMin();
inthour=this.getHour()+clock.getHour();
while(se>=60){//如果秒数满60则-60秒,加一分钟
se=se-60;
min=min+1;
}
while(min>=60){
min=min-60;
hour=hour+1;
}
while(hour>=24){
hour=hour-24;
}
this.setSecond(se);
this.setMin(min);
this.setHour(hour);
}
publicintgetHour(){
returnhour;
}
publicvoidsetHour(inthour){
this.hour=hour;
}
publicintgetMin(){
returnmin;
}
publicvoidsetMin(intmin){
this.min=min;
}
publicintgetSecond(){
returnsecond;
}
publicvoidsetSecond(intsecond){
this.second=second;
}
publicStringformatedTime(){
return(this.getHour()>10?this.getHour():"0"+this.getHour())
+":"
+(this.getMin()>10?this.getMin():"0"+this.getMin())
+":"
+(this.getSecond()>10?this.getSecond():"0"
+this.getSecond());
}
publicstaticvoidmain(String[]args){
Clockclock=newClock(19,59,59);
ClockanotherClock=newClock(0,0,1);
clock.add(anotherClock);
System.out.println(clock.formatedTime());
}
}
//其中三目运算只是为了保证小于10的前面加个0,符合时间显示规范
B. java获取当前时间加半小时之后的时间
一、步骤如下:
long currentTime = System.currentTimeMillis() + 30 * 60 * 1000;
Date date = new Date(currentTime);
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String nowTime="";
nowTime= df.format(date);
System.out.println(nowTime);
二、分析:
1、获取当前时间,获取到的时间类型是long类型的,单位是毫秒
2、在这个基础上加上30分钟:currentTime +=30*60*1000;
3、格式化时间,获取到的就是当前时间半个小时之后的时间Date date=new Date(currentTime);
4、建立时间格式化对象:
SimpleDateFormat dateFormat = new SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss");
(2)java时间加半小时扩展阅读
JDK(Java Development Kit)称为Java开发包或Java开发工具,是一个编写Java的Applet小程序和应用程序的程序开发环境。JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一些Java工具和Java的核心类库(Java API)。
不论什么Java应用服务器实质都是内置了某个版本的JDK。主流的JDK是Sun公司发布的JDK,除了Sun之外,还有很多公司和组织都开发了自己的JDK,例如,IBM公司开发的JDK,BEA公司的Jrocket,还有GNU组织开发的JDK
另外,可以把Java API类库中的Java SE API子集和Java虚拟机这两部分统称为JRE(JAVA Runtime Environment),JRE是支持Java程序运行的标准环境
(参考资料 网络 Java)
C. java时间加减
1.用java.util.Calender来实现
Calendar calendar=Calendar.getInstance();
calendar.setTime(new Date());
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//今天的日期
calendar.set(Calendar.DAY_OF_MONTH,calendar.get(Calendar.DAY_OF_MONTH)+1);//让日期加1
System.out.println(calendar.get(Calendar.DATE));//加1之后的日期Top
2.用java.text.SimpleDateFormat和java.util.Date来实现
Date d=new Date();
SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");
System.out.println("今天的日期:"+df.format(d));
System.out.println("两天前的日期:" + df.format(new Date(d.getTime() - 2 * 24 * 60 * 60 * 1000)));
System.out.println("三天后的日期:" + df.format(new Date(d.getTime() + 3 * 24 * 60 * 60 * 1000)));
GregorianCalendar gc=new GregorianCalendar();
gc.setTime(new Date);
gc.add(field,value);
value为正则往后,为负则往前
field取1加1年,取2加半年,取3加一季度,取4加一周
取5加一天....
D. java怎样得到30分钟后的时间该如何处理
java获取当前时间加半小时之后的时间:
1、获取当前时间,获取到的时间类型是long类型的,单位是毫秒
long currentTime = System.currentTimeMillis() ;
2、在这个基础上加上30分钟:
currentTime +=30*60*1000;
3、格式化时间,获取到的就是当前时间半个小时之后的时间
Date date=new Date(currentTime);
4、建立时间格式化对象:
SimpleDateFormat dateFormat = new SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss");
完整代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
import java.text.SimpleDateFormat;
import java.util.Date;
public class Demo {
public static void main(String[] args) {
long curren = System.currentTimeMillis();
curren += 30 * 60 * 1000;
Date da = new Date(curren);
SimpleDateFormat dateFormat = new SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss");
System.out.println(dateFormat.format(da));
}
}
E. java如何在现有时间加上20s
楼上的有点麻烦 我写个简单点的
Date date = new Date();
long time=date.getTime()+20000; //这是毫秒数
SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
System.out.print(sdf.format(time));
F. java 在当前时间加半小时
long currentTime = System.currentTimeMillis() + 30 * 60 * 1000;
Date date = new Date(currentTime);
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String nowTime="";
nowTime= df.format(date);
System.out.println(nowTime);