/* package whatever; // don't place package name! */
import java.util.* ;
import java.time.* ;
import java.time.temporal.* ;
import java.time.format.* ;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
LocalDate dt = LocalDate.of ( 2000 , 1 , 1 ) ;
printWeekFields( dt, WeekFields.ISO ) ;
printWeekFields( dt, WeekFields.of ( DayOfWeek.SUNDAY , 1 ) ) ;
}
static void printWeekFields( LocalDate dt, WeekFields wf) {
System .
out .
println ( "\n -------------\n Campos para " + dt
+ " (primeiro dia da semana: " + wf.
getFirstDayOfWeek ( ) .
getDisplayName ( TextStyle.
FULL ,
new Locale ( "pt" ,
"BR" ) ) + ", mínimo de dias na primeira semana: " + wf.getMinimalDaysInFirstWeek ( ) + ")" ) ;
System .
out .
println ( "semana " + dt.
get ( wf.
weekOfWeekBasedYear ( ) ) + " do week-based year " + dt.
get ( wf.
weekBasedYear ( ) ) ) ; System .
out .
println ( "semana dentro do mês (usando a definição de semana do WeekFields): " + dt.
get ( wf.
weekOfMonth ( ) ) ) ; System .
out .
println ( "semana do mês (usando o dia 1 como o início da primeira semana): " + dt.
get ( ChronoField.
ALIGNED_WEEK_OF_MONTH ) ) ; }
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS50aW1lLio7CmltcG9ydCBqYXZhLnRpbWUudGVtcG9yYWwuKjsKaW1wb3J0IGphdmEudGltZS5mb3JtYXQuKjsKCi8qIE5hbWUgb2YgdGhlIGNsYXNzIGhhcyB0byBiZSAiTWFpbiIgb25seSBpZiB0aGUgY2xhc3MgaXMgcHVibGljLiAqLwpjbGFzcyBJZGVvbmUKewoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uCgl7CiAgICAgICAgTG9jYWxEYXRlIGR0ID0gTG9jYWxEYXRlLm9mKDIwMDAsIDEsIDEpOwogICAgICAgIHByaW50V2Vla0ZpZWxkcyhkdCwgV2Vla0ZpZWxkcy5JU08pOwogICAgICAgIHByaW50V2Vla0ZpZWxkcyhkdCwgV2Vla0ZpZWxkcy5vZihEYXlPZldlZWsuU1VOREFZLCAxKSk7CiAgICB9CgogICAgc3RhdGljIHZvaWQgcHJpbnRXZWVrRmllbGRzKExvY2FsRGF0ZSBkdCwgV2Vla0ZpZWxkcyB3ZikgewogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiXG4tLS0tLS0tLS0tLS0tXG5DYW1wb3MgcGFyYSAiICsgZHQgKyAiIChwcmltZWlybyBkaWEgZGEgc2VtYW5hOiAiCiAgICAgICAgICAgICAgICAgICAgICAgICsgd2YuZ2V0Rmlyc3REYXlPZldlZWsoKS5nZXREaXNwbGF5TmFtZShUZXh0U3R5bGUuRlVMTCwgbmV3IExvY2FsZSgicHQiLCAiQlIiKSkgKyAiLCBtw61uaW1vIGRlIGRpYXMgbmEgcHJpbWVpcmEgc2VtYW5hOiAiCiAgICAgICAgICAgICAgICAgICAgICAgICsgd2YuZ2V0TWluaW1hbERheXNJbkZpcnN0V2VlaygpICsgIikiKTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oInNlbWFuYSAiICsgZHQuZ2V0KHdmLndlZWtPZldlZWtCYXNlZFllYXIoKSkgKyAiIGRvIHdlZWstYmFzZWQgeWVhciAiICsgZHQuZ2V0KHdmLndlZWtCYXNlZFllYXIoKSkpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigic2VtYW5hIGRlbnRybyBkbyBtw6pzICh1c2FuZG8gYSBkZWZpbmnDp8OjbyBkZSBzZW1hbmEgZG8gV2Vla0ZpZWxkcyk6ICIgKyBkdC5nZXQod2Yud2Vla09mTW9udGgoKSkpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigic2VtYW5hIGRvIG3DqnMgKHVzYW5kbyBvIGRpYSAxIGNvbW8gbyBpbsOtY2lvIGRhIHByaW1laXJhIHNlbWFuYSk6ICIgKyBkdC5nZXQoQ2hyb25vRmllbGQuQUxJR05FRF9XRUVLX09GX01PTlRIKSk7CiAgICB9Cn0=