Что ему не нравится?
package com.javarush.task.task40.task4007;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.regex.Pattern;
/*
Работа с датами
*/
public class Solution {
public static void main(String[] args) throws ParseException {
printDate("21.4.2014 15:56:45");
System.out.println();
printDate("21.4.2014");
System.out.println();
printDate("17:33:40");
}
public static void printDate(String date) throws ParseException {
Calendar calendar = Calendar.getInstance();
String firstFormat = "dd.M.yyyy HH:mm:ss";
String secondFormat = "dd.M.yyy";
String thirdFormat = "HH:mm:ss";
if (date.contains(".") && date.contains(":")) {
DateFormat dateFormat = new SimpleDateFormat(firstFormat);
Date dateGiven = dateFormat.parse(date);
calendar.setTime(dateGiven);
System.out.println("День: " + calendar.get(Calendar.DAY_OF_MONTH));
System.out.println("День недели: " + (calendar.get(Calendar.DAY_OF_WEEK) - 1));
System.out.println("День месяца: " + calendar.get(Calendar.DAY_OF_MONTH));
System.out.println("День года: " + calendar.get(Calendar.DAY_OF_YEAR));
System.out.println("Неделя месяца: " + calendar.get(Calendar.WEEK_OF_MONTH));
System.out.println("Неделя года: " + calendar.get(Calendar.WEEK_OF_YEAR));
System.out.println("Месяц: " + (calendar.get(Calendar.MONTH) + 1));
System.out.println("Год: " + calendar.get(Calendar.YEAR));
if (calendar.get(Calendar.AM_PM) == Calendar.PM) {
System.out.println("АМ или РМ: РМ");
} else {
System.out.println("АМ или РМ: АМ");
}
System.out.println("Часы: " + calendar.get(Calendar.HOUR));
System.out.println("Часы дня: " + calendar.get(Calendar.HOUR_OF_DAY));
System.out.println("Минуты: " + calendar.get(Calendar.MINUTE));
System.out.println("Секунды: " + calendar.get(Calendar.SECOND));
} else if (date.contains(".") && !date.contains(":")) {
DateFormat dateFormat = new SimpleDateFormat(secondFormat);
Date dateGiven = dateFormat.parse(date);
calendar.setTime(dateGiven);
System.out.println("День: " + calendar.get(Calendar.DAY_OF_MONTH));
System.out.println("День недели: " + (calendar.get(Calendar.DAY_OF_WEEK) - 1));
System.out.println("День месяца: " + calendar.get(Calendar.DAY_OF_MONTH));
System.out.println("День года: " + calendar.get(Calendar.DAY_OF_YEAR));
System.out.println("Неделя месяца: " + calendar.get(Calendar.WEEK_OF_MONTH));
System.out.println("Неделя года: " + calendar.get(Calendar.WEEK_OF_YEAR));
System.out.println("Месяц: " + (calendar.get(Calendar.MONTH) + 1));
System.out.println("Год: " + calendar.get(Calendar.YEAR));
} else if (date.contains(":") && !date.contains(".")) {
DateFormat dateFormat = new SimpleDateFormat(thirdFormat);
Date dateGiven = dateFormat.parse(date);
calendar.setTime(dateGiven);
if (calendar.get(Calendar.AM_PM) == Calendar.PM) {
System.out.println("АМ или РМ: РМ");
} else {
System.out.println("АМ или РМ: АМ");
}
System.out.println("Часы: " + calendar.get(Calendar.HOUR));
System.out.println("Часы дня: " + calendar.get(Calendar.HOUR_OF_DAY));
System.out.println("Минуты: " + calendar.get(Calendar.MINUTE));
System.out.println("Секунды: " + calendar.get(Calendar.SECOND));
}
}
}