TL;DR
OffsetDateTime.of(
LocalDate.now( ZoneOffset.UTC ) ,
LocalTime.of( 18 , 30 ),
ZoneOffset.UTC
).atZoneSameInstant( ZoneId.of( "Asia/Kolkata" ) )
java.time.
UTC LocalDate .
LocalDate localDate = LocalDate.now( ZoneOffset.UTC );
LocalTime .
LocalTime localTime = LocalTime.of( 18 , 30 );
offset-from-UTC , UTC ZoneOffset.UTC, OffsetDateTime.
OffsetDateTime odt = OffsetDateTime.of( localDate , localTime, ZoneOffset.UTC );
ZoneId, ZonedDateTime . IST ? ?
continent/region, America/Montreal, Africa/Casablanca Pacific/Auckland. 3-4 , EST IST, , (!).
ZoneId z = ZoneId.of( "Asia/Kolkata" );
ZonedDateTime zdt = odt.atZoneSameInstant( z );
IdeOne.com.
localDate.toString(): 2017-02-13
localTime.toString(): 18:30
odt.toString(): 2017-02-13T18: 30Z
zdt.toString(): 2017-02-14T00: 00 + 05: 30 [/]
java.time
java.time Java 8 . legacy , java.util.Date, Calendar SimpleDateFormat.
Joda-Time, , java.time.
, . Oracle. Qaru . JSR 310.
java.time?
ThreeTen-Extra java.time . java.time. , Interval, YearWeek, YearQuarter .