Java 时间处理日历类(Calender)

日历类:Calendar
抽象类:Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,

  • 父类:Object
  • 父接口:Serializable, Cloneable, Comparable
  • 子类:GregorianCalendar

功能:如何将字符串的日期转为java.util.Date类型

1:日期的默认字符串格式 : 月 日期 年 (Dec 19 2018)
2:自定义字符串的日期格式 (1999-12-12,1999年12月12日,1999/12/12)
DateFormat:是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间
子类:SimpleDateFormat
同步:安全的,但是效率低
DateFormat的2个主要功能
1:将字符串转为Date

DateFormat df = new SimpleDateFormat(“yyyy-MM-dd”);
Date date = df.parse(“2018-12-19”);

2:将Date转为字符串

DateFormat df = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
String ss = df.format(new Date());
public class Demo {
static Student stu;

 public static void main(String[] args) throws ParseException {
	 //1 创建一个日期格式转换类  按照yyyy-MM-dd来匹配
	/* DateFormat df = new SimpleDateFormat("yyyy年MM月dd");
	 //2  从给定字符串的开始解析文本,以生成一个日期。
	 String ss = "2018年12月19";
	 Date date = df.parse(ss);
	 System.out.println(date);
	 */
	 
	 //1:创建一个日期格式转换类
	/* DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	 Date date = new Date();
	 String s =  df.format(date);
	 System.out.println(s);*/
	 register();
	 showStuInfo();
}

 /**
  * 展示学生信息
  */
public static void showStuInfo(){
	//DateFormat df = new SimpleDateFormat("yyyy/MM/dd");
	//String enterDate = df.format(stu.getEnterDate());
	System.out.println("学号\t姓名\t性别\t年龄\t入学日期");
	System.out.println(stu.getId()+"\t"+stu.getName()+"\t"+stu.getSex()
	+"\t"+stu.getAge()+"\t"+stu.getEnterDate().toLocaleString());
	
}

/**
 * 注册学生
 */
public static void register(){
	Scanner sc = new Scanner(System.in);
	System.out.println("----注册学生信息-----");
	System.out.println("请输入你的学号:");
	String id = sc.nextLine();
	System.out.println("请输入你的姓名:");
	String name = sc.nextLine();
	System.out.println("请输入你的性别:");
	String sex = sc.nextLine();
	System.out.println("请输入你的年龄:");
	int age = Integer.parseInt(sc.nextLine());
	System.out.println("请输入你的入学日期:  按照如下格式:2018-12-12");
	String d = sc.nextLine();
	DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
	Date enterdate = null;
	try {
		enterdate = df.parse(d);
	} catch (ParseException e) {
		e.printStackTrace();
	}

	stu = new Student(id, name, sex, age, enterdate);
	System.out.println(stu);
	
}

	
}

你可能感兴趣的:(Java 时间处理日历类(Calender))