/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.Month;
import java.time.ZoneOffset;
import java.util.TimeZone;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
billingDateFormatter.
setTimeZone( TimeZone.
getTimeZone( "Asia/Tokyo" ) ); System.
out.
println( billingDateFormatter.
getTimeZone() ); // Verify the time zone. try
{
d = billingDateFormatter.parse( "Dec 1, 2014" );
}
{
e.printStackTrace();
}
LocalDate ld = d.toInstant().atOffset( ZoneOffset.UTC ).toLocalDate();
LocalDate expected = LocalDate.of( 2014 , Month.DECEMBER , 1 );
boolean metExpectations = ld.equals( expected );
System.
out.
println( "d = " + d
); System.
out.
println( "ld = " + ld
); System.
out.
println( "expected = " + expected
); System.
out.
println( "metExpectations = " + metExpectations
); }
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgppbXBvcnQgamF2YS50ZXh0LlBhcnNlRXhjZXB0aW9uOwppbXBvcnQgamF2YS50ZXh0LlNpbXBsZURhdGVGb3JtYXQ7CmltcG9ydCBqYXZhLnRpbWUuTG9jYWxEYXRlOwppbXBvcnQgamF2YS50aW1lLk1vbnRoOwppbXBvcnQgamF2YS50aW1lLlpvbmVPZmZzZXQ7CmltcG9ydCBqYXZhLnV0aWwuVGltZVpvbmU7CgoKLyogTmFtZSBvZiB0aGUgY2xhc3MgaGFzIHRvIGJlICJNYWluIiBvbmx5IGlmIHRoZSBjbGFzcyBpcyBwdWJsaWMuICovCmNsYXNzIElkZW9uZQp7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb24KCXsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIFJ1bnRpbWUudmVyc2lvbigpICk7CgogICAgICAgIFNpbXBsZURhdGVGb3JtYXQgYmlsbGluZ0RhdGVGb3JtYXR0ZXIgPSBuZXcgU2ltcGxlRGF0ZUZvcm1hdCggIk1NTSBkLCB5eXl5IiApOwogICAgICAgIGJpbGxpbmdEYXRlRm9ybWF0dGVyLnNldFRpbWVab25lKCBUaW1lWm9uZS5nZXRUaW1lWm9uZSggIkFzaWEvVG9reW8iICkgKTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIGJpbGxpbmdEYXRlRm9ybWF0dGVyLmdldFRpbWVab25lKCkgKTsgIC8vIFZlcmlmeSB0aGUgdGltZSB6b25lLgogICAgICAgIGphdmEudXRpbC5EYXRlIGQgPSBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgZCA9IGJpbGxpbmdEYXRlRm9ybWF0dGVyLnBhcnNlKCAiRGVjIDEsIDIwMTQiICk7CiAgICAgICAgfQogICAgICAgIGNhdGNoICggUGFyc2VFeGNlcHRpb24gZSApCiAgICAgICAgewogICAgICAgICAgICBlLnByaW50U3RhY2tUcmFjZSgpOwogICAgICAgIH0KICAgICAgICBMb2NhbERhdGUgbGQgPSBkLnRvSW5zdGFudCgpLmF0T2Zmc2V0KCBab25lT2Zmc2V0LlVUQyApLnRvTG9jYWxEYXRlKCk7CiAgICAgICAgTG9jYWxEYXRlIGV4cGVjdGVkID0gTG9jYWxEYXRlLm9mKCAyMDE0ICwgTW9udGguREVDRU1CRVIgLCAxICk7CiAgICAgICAgYm9vbGVhbiBtZXRFeHBlY3RhdGlvbnMgPSBsZC5lcXVhbHMoIGV4cGVjdGVkICk7CgogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbiggImQgPSAiICsgZCApOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbiggImxkID0gIiArIGxkICk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCAiZXhwZWN0ZWQgPSAiICsgZXhwZWN0ZWQgKTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oICJtZXRFeHBlY3RhdGlvbnMgPSAiICsgbWV0RXhwZWN0YXRpb25zICk7Cgl9Cn0=