import java.sql.Time; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import java.util.TimeZone; public class Question { public static void main(String[] args) throws Exception{ // TODO Auto-generated method stub SimpleDateFormat sdf = new SimpleDateFormat("dd-M-yyyy hh:mm:ss"); sdf.setTimeZone(TimeZone.getTimeZone("America/Los_Angeles")); String dateInString = "06-11-2016 01:59:59"; Date date = sdf.parse(dateInString); displayDates(date); System.out.println("Next date"); dateInString = "09-11-2016 01:59:59"; date = sdf.parse(dateInString); displayDates(date); } private static void displayDates(Date date){ Time timeOffSet = Time.valueOf("23:59:59"); TimeZone tz = TimeZone.getTimeZone("America/Adak"); GregorianCalendar destTzCal = new GregorianCalendar(tz); destTzCal.setTimeInMillis(date.getTime()); System.out.println("Time before setting offset: " + destTzCal.getTime()); destTzCal.set(Calendar.HOUR_OF_DAY, timeOffSet.getHours()); System.out.println("Time after setting offset: " + destTzCal.getTime()); } }