java用什么表示时间,java里表示时间的类型是什么
大家好,如果您还对java用什么表示时间不太了解,没有关系,今天就由本站为大家分享java用什么表示时间的知识,包括java里表示时间的类型是什么的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!
java里表示时间的类型是什么
java.util.Date,和java.util.Calendar是 java的主要的时间类型
Java.util.Calendar类是java.util.Date类的一个更加深入,更加全面的替代。Java.util.Calendar类支持java.util.Date的所有功能,此外,Calendar还引入了多语言,多区域的特性,可以根据需要获取不同区域,不同时区的时间,Calendar还增加了比Date更加方便和快捷的许多操作,如获取一年当中的第几个星期,各个月的天数等便捷的方法。
Java.util.Calendar区别与java.util.Date的几个地方也需要注意一下:首先,Calendar增加了毫秒的时间段,通过它可以获取时间点的毫秒值,而java.util.Date只是精确到秒。其次,Calendar过去年的时候是当前年份比如:2010,而Date获取年份的时获取到的是当前年份-1900的一个值(2010-1900=110,因此,你调用getYear后过去的值就是110)。最后Calendar是一个抽象类,之所以能够实例化,是因为此处的Calendar充当了一个类似于工厂的作用,在getInstance方法中实例化了Calendar子类GregorianCalendar,并把它返回给客户使用。
此外,还有 java.sql.Date, java.sql.Time, java.sql.Timestamp
java如何比较具体时间
给你点思路吧
比如你要用2008-03-15和今天比较
1、取出两个时间来,如果是从数据库取出,最好使用java.sql.Timestamp格式的时间,现在时间为:Date now= new Date();
2、将取出的两个时间进行格式化:使用java.text.SimpleDateFormat
SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd");//将日期格式化为:yyyy-MM-dd
String n= formatter.format(now);//将当前时间进行格式化
3、比较:使用String类型的比较:compareTo//看API
如:数据库取出的时间如果是String类型的话,直接使用就行
如果取出的时间是Timestamp类型,将其转化成String类型
formatter.format(数据库的timestamp类型).compareTo(n);
以上是基本的一些操作,LZ可以根据自己的需求来改,我的主要的思路就是通过String类型进行比较
java中如何输出当时的日期和时间
代码如下:
packagecom.grace.test;
importjava.text.DateFormat;
importjava.text.ParseException;
importjava.text.SimpleDateFormat;
importjava.util.Calendar;
importjava.util.Date;
publicclassshowDate{
publicstaticvoidmain(String[]args)throwsParseException{
Dated=newDate();
Strings=null;
/**输出格式:MonMay0515:23:58CST2014*/
System.out.println(d);
/**输出格式:2014-5-5*/
s=DateFormat.getDateInstance().format(d);
System.out.println(s);
/**输出格式:2014-5-5*/
s=DateFormat.getDateInstance(DateFormat.DEFAULT).format(d);
System.out.println(s);
/**输出格式:2014年5月5日星期一*/
s=DateFormat.getDateInstance(DateFormat.FULL).format(d);
System.out.println(s);
/**输出格式:2014-5-5*/
s=DateFormat.getDateInstance(DateFormat.MEDIUM).format(d);
System.out.println(s);
/**输出格式:14-5-5*/
s=DateFormat.getDateInstance(DateFormat.SHORT).format(d);
System.out.println(s);
/**输出格式:2014-5-0500:00:00大写H为24小时制*/
DateFormatsdf=newSimpleDateFormat("yyyy-MM-ddHH:mm:ss");
s=sdf.format(d);
System.out.println(s);
/**输出格式:2014-5-0500:00:00小写h为12小时制*/
DateFormatsdf2=newSimpleDateFormat("yyyy-MM-ddhh:mm:ss");
s=sdf2.format(d);
System.out.println(s);
/**输出格式:20140505000000*/
DateFormatsdf3=newSimpleDateFormat("yyyyMMddHHmmss");
s=sdf3.format(d);
System.out.println(s);
/**字符串转换城日期格式*/
s=sdf.format(d);
Datetoday=sdf.parse(s);
System.out.println("字符串转成日期1:"+today);
System.out.println("字符串转成日期2:"+sdf.format(today));
/**单独输出年月日时分秒等*/
Calendarc=Calendar.getInstance();
System.out.println("年:"+c.get(Calendar.YEAR));
//月份从0开始,加1校正
System.out.println("月:"+(c.get(Calendar.MONTH)+1)+"");
System.out.println("日:"+c.get(Calendar.DAY_OF_MONTH));
System.out.println("时:"+c.get(Calendar.HOUR_OF_DAY));
System.out.println("分:"+c.get(Calendar.MINUTE));
System.out.println("秒:"+c.get(Calendar.SECOND));
System.out.println("当前时间毫秒数:"+c.getTimeInMillis());
System.out.println("当前时间:"+c.getTime());
}
}
java中定义一个时间类
正好我这有一个日期的工具类,你参考一下。我是直接黏贴进来的,看起来感觉有点乱,你复制后放到eclipse里看就整齐了。
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import org.junit.Test;
/**
*@author Administrator
*各种日期、时间转换的示例总结:
*/
public class DateFormatUtil{
/**
*将当前时间转换成指定格式的日期形式的字符串输出
**/
@Test
public void dateToStr(){
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateString= sdf.format(new Date());
System.out.println(dateString);
}
/**
*将给定时间格式的字符串,解析成Date输出
*@throws ParseException
**/
@Test
public void strToDate() throws ParseException{
String str="201012241002";//yyyyMMddhhmm
SimpleDateFormat sdf= new SimpleDateFormat("yyyyMMddhhmm");
Date date= sdf.parse(str);
System.out.println(date);
}
/**
*字符串,格式化为指定字符串
*@throws ParseException
*/
@Test
public void formatstr()throws ParseException{
String str="20170314155847";//yyyyMMddhhmm
SimpleDateFormat sdf= new SimpleDateFormat("yyyyMMddHHmmss");
SimpleDateFormat sdf2= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String str2= sdf2.format(sdf.parse(str));
System.out.println(str2);
}
/**
*操作时间:当前时间减去一天,一月,一年
*/
@Test
public void oprateDate(){
Date date= new Date();//获取当前时间
Calendar calendar= Calendar.getInstance();
calendar.setTime(date);
// calendar.add(Calendar.YEAR,-1);//当前时间减去一年,即一年前的时间
// calendar.add(Calendar.MONTH,-1);//当前时间前去一个月,即一个月前的时间
calendar.add(Calendar.DATE,-1);
Date time= calendar.getTime();//获取一年前的时间,或者一个月前的时间
System.out.println(time);
}
}
好了,本文到此结束,如果可以帮助到大家,还望关注本站哦!