即时通讯有一个困难时期试图改变这个print语句到一个变量与其他变量进行比较。
是否有存储输出作为一个变量,而不是印刷柜面你需要确定两个日期的差异呢?
import java.util.GregorianCalendar;
import java.util.Calendar;
public class Test {
public static void main(String[] args){
int Day = 8;
int Month = 2;
int Year = 1950;
GregorianCalendar gcal = new GregorianCalendar(Year, Month, Day);
String month[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
System.out.println(month[gcal.get(Calendar.MONTH)] + " " + gcal.get(Calendar.DATE) + ", "
+ gcal.get(Calendar.YEAR));}
}
此输出打印:1950年3月8日
以存储为一个变量,因此它可以比其他日期,电话getTime()
:
int Day = 8;
int Month = 2;
int Year = 1950;
GregorianCalendar gcal = new GregorianCalendar(Year, Month, Day);
Date date = gcal.getTime();
为了格式,如Mar 8, 1950
,使用SimpleDateFormat
:
SimpleDateFormat dateFormat = new SimpleDateFormat("MMM d, yyyy", Locale.US);
String str = dateFormat.format(date);
没有必要使自己的月份名称。
但是,如果您使用的是Java 8或更高版本1,你应该使用LocalDate
类,而不是GregorianCalendar
:
int day = 8;
int month = 3;
int year = 1950;
LocalDate date = LocalDate.of(year, month, day);
需要注意的是不同GregorianCalendar
的month
值是1型,因此它需要3
得到Mar
。
为了格式,如Mar 8, 1950
,使用DateTimeFormatter
:
DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("MMM d, uuuu", Locale.US);
String str = date.format(dateFormat);
1)如果你使用的是Java 6或7,你仍然可以使用LocalDate
通过添加ThreeTen-反向移植库。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句