/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
import java.time.* ;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
Map < LocalDate,
Set < ZonedDateTime
> > map
= new HashMap <>( ); Set < ZonedDateTime
> set
= null;
ZoneId z = ZoneId.of( "Africa/Tunis" );
LocalDate today = LocalDate.now( z );
ZonedDateTime todayStart = today.atStartOfDay( z ); // Determine the first moment of the day in a particular time zone.
map.
putIfAbsent( todayStart.
toLocalDate( ) ,
new HashSet <>( ) ); set = map.get( todayStart.toLocalDate( ) ) ;
set.add( todayStart );
ZonedDateTime zdt1 = todayStart.plusHours( 6 );
map.
putIfAbsent( zdt1.
toLocalDate( ) ,
new HashSet <>( ) ); set = map.get( zdt1.toLocalDate( ) ) ;
set.add( zdt1 );
ZonedDateTime zdt2 = todayStart.plusDays( 2 );
map.
putIfAbsent( zdt2.
toLocalDate( ) ,
new HashSet <>( ) ); set = map.get( zdt2.toLocalDate( ) ) ;
set.add( zdt2 );
ZonedDateTime zdt3 = todayStart.plusMonths( 4 );
map.
putIfAbsent( zdt3.
toLocalDate( ) ,
new HashSet <>( ) ); set = map.get( zdt3.toLocalDate( ) ) ;
set.add( zdt3 );
System.
out.
println( "map.toString(): " + map
);
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgppbXBvcnQgamF2YS50aW1lLiogOwoKLyogTmFtZSBvZiB0aGUgY2xhc3MgaGFzIHRvIGJlICJNYWluIiBvbmx5IGlmIHRoZSBjbGFzcyBpcyBwdWJsaWMuICovCmNsYXNzIElkZW9uZQp7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb24KCXsKCiAgICBNYXAgPCBMb2NhbERhdGUsIFNldCA8IFpvbmVkRGF0ZVRpbWUgPiA+IG1hcCA9IG5ldyBIYXNoTWFwIDw+KCApOwogICAgU2V0IDwgWm9uZWREYXRlVGltZSA+IHNldCA9IG51bGw7CgogICAgWm9uZUlkIHogPSBab25lSWQub2YoICJBZnJpY2EvVHVuaXMiICk7CiAgICBMb2NhbERhdGUgdG9kYXkgPSBMb2NhbERhdGUubm93KCB6ICk7CiAgICBab25lZERhdGVUaW1lIHRvZGF5U3RhcnQgPSB0b2RheS5hdFN0YXJ0T2ZEYXkoIHogKTsgIC8vIERldGVybWluZSB0aGUgZmlyc3QgbW9tZW50IG9mIHRoZSBkYXkgaW4gYSBwYXJ0aWN1bGFyIHRpbWUgem9uZS4KICAgIG1hcC5wdXRJZkFic2VudCggdG9kYXlTdGFydC50b0xvY2FsRGF0ZSggKSAsIG5ldyBIYXNoU2V0IDw+KCApICk7CiAgICBzZXQgPSBtYXAuZ2V0KCB0b2RheVN0YXJ0LnRvTG9jYWxEYXRlKCApICApIDsKICAgIHNldC5hZGQoIHRvZGF5U3RhcnQgKTsKCiAgICBab25lZERhdGVUaW1lIHpkdDEgPSB0b2RheVN0YXJ0LnBsdXNIb3VycyggNiApOwogICAgbWFwLnB1dElmQWJzZW50KCB6ZHQxLnRvTG9jYWxEYXRlKCApICwgbmV3IEhhc2hTZXQgPD4oICkgKTsKICAgIHNldCA9IG1hcC5nZXQoIHpkdDEudG9Mb2NhbERhdGUoICkgICkgOwogICAgc2V0LmFkZCggemR0MSApOwoKICAgIFpvbmVkRGF0ZVRpbWUgemR0MiA9IHRvZGF5U3RhcnQucGx1c0RheXMoIDIgKTsKICAgIG1hcC5wdXRJZkFic2VudCggemR0Mi50b0xvY2FsRGF0ZSggKSAsIG5ldyBIYXNoU2V0IDw+KCApICk7CiAgICBzZXQgPSBtYXAuZ2V0KCB6ZHQyLnRvTG9jYWxEYXRlKCApICApIDsKICAgIHNldC5hZGQoIHpkdDIgKTsKCiAgICBab25lZERhdGVUaW1lIHpkdDMgPSB0b2RheVN0YXJ0LnBsdXNNb250aHMoIDQgKTsKICAgIG1hcC5wdXRJZkFic2VudCggemR0My50b0xvY2FsRGF0ZSggKSAsIG5ldyBIYXNoU2V0IDw+KCApICk7CiAgICBzZXQgPSBtYXAuZ2V0KCB6ZHQzLnRvTG9jYWxEYXRlKCApICApIDsKICAgIHNldC5hZGQoIHpkdDMgKTsKCiAgICBTeXN0ZW0ub3V0LnByaW50bG4oICJtYXAudG9TdHJpbmcoKTogIiArIG1hcCApOwogICAgCiAgICAKCX0KfQ==