import java.util.Calendar;
public class Employee {
private Calendar doj;
public Employee(Calendar date) {
// TODO Auto-generated constructor stub
this.doj=date;
}
public Calendar getDoj()
{
return doj;
}
}
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
public class TestEmployeeSort {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
List<Employee> coll = getEmployees();
printList(coll);
}
public static List<Employee> getEmployees()
{
List<Employee> col = new ArrayList<Employee>();
col.add(new Employee(Calendar.getInstance()));
return col;
}
private static void printList(List<Employee> list) {
System.out.println("Date_Of_Joining");
for (int i = 0; i < list.size(); i++) {
Employee e = list.get(i);
System.out.println(e.getDoj());
}
}
}
以上代码产生以下输出 加入的日期 java.util.GregorianCalendar中[时间= 1291275522078,areFieldsSet =真,areAllFieldsSet =真,宽大=真,区= sun.util.calendar.ZoneInfo [ID = “亚洲/加尔各答”,偏移= 19800000,dstSavings = 0,useDaylight =假,过渡= 6,lastRule =空],Firstdayofweek可= 1,minimalDaysInFirstWeek = 1,ERA = 1,YEAR = 2010,月= 11,WEEK_OF_YEAR = 49,WEEK_OF_MONTH = 1,DAY_OF_MONTH = 2,DAY_OF_YEAR = 336,DAY_OF_WEEK = 5 ,DAY_OF_WEEK_IN_MONTH = 1,AM_PM = 1,HOUR = 1,HOUR_OF_DAY = 13,MINUTE = 8,SECOND = 42,微差= 78,ZONE_OFFSET = 19800000,DST_OFFSET = 0]
我只需要单独打印日期。我该如何更改代码?
答案 0 :(得分:8)
个人而言我会使用Joda Time(及其LocalDate
类,如果你真的只想维持日期而不是java.util.Calendar
,但如果你做< / em>想要使用Calendar
,您需要SimpleDateFormat
。
java.util.Calendar示例:
import java.util.*;
import java.text.*;
public class Test
{
public static void main(String[] args)
{
Calendar calendar = Calendar.getInstance();
SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy");
System.out.println(format.format(calendar.getTime()));
}
}
Joda时间样本:
import org.joda.time.*;
import org.joda.time.format.*;
public class Test
{
public static void main(String[] args)
{
LocalDate today = new LocalDate();
// Alternatively, use DateTimeFormat.mediumDate etc
DateTimeFormatter formatter = DateTimeFormat.forPattern("dd/MM/yyyy");
System.out.println(formatter.print(today));
}
}
答案 1 :(得分:2)
使用java.text.DateFormat
代替裸Calendar
。
答案 2 :(得分:2)
使用返回Date的Caledar.getTime()。然后使用SimpleDateFormat格式化它。
答案 3 :(得分:0)
签出http://veyder-time.enblom.org这是java.util.Calendar的一个简单而强大的替代方案。