Java8 LocalDateTime获取当前周是本年第几周weekOfYear,用WeekFields

Java8 LocalDateTime获取当前周是本年第几周weekOfYear, 可用WeekFields

LocalDateTime 没有直接获得 weekOfYear 的方法

LocalDateTime 有一个 get(TemporalField field) 方法, 返回 int

 public int get(TemporalField field) {
        if (field instanceof ChronoField chronoField) {
            return (chronoField.isTimeBased() ? time.get(field) : date.get(field));
        }
        return ChronoLocalDateTime.super.get(field);
    }

TemporalField 可通过 WeekFields实例的方法获得 其中就有 weekOfYear()

WeekFields 有两个静态的默认的 WeekFields 实例

  • WeekFields.ISO 每周由星期一开始
  • WeekFields.SUNDAY_START 每周由星期日开始

WeekFields实例,获取TemporalField 的方法有

  • public TemporalField dayOfWeek()
  • public TemporalField weekOfMonth()
  • public TemporalField weekOfYear()
  • public TemporalField weekOfWeekBasedYear()
  • public TemporalField weekBasedYear()

其中 weekOfYear() 就是获取 获取当前周的TemporalField

例子1

import java.time.LocalDateTime;
import java.time.temporal.WeekFields;
import java.util.Calendar;

public class LocalDateTime获取当前周是第几周2306222222 {
	
	public static void main(String...arguments)throws Exception{
		
		
		LocalDateTime localDateTime = LocalDateTime.now();
		
		int 第几周ByLocalDateTime = localDateTime.get(WeekFields.ISO.weekOfYear());
		
		System.out.println("第几周ByLocalDateTime="+第几周ByLocalDateTime);
		
		
		
		Calendar calendar = Calendar.getInstance();
		
		int 第几周ByCalendar = calendar.get(Calendar.WEEK_OF_YEAR);
		
		System.out.println("第几周ByCalendar="+第几周ByCalendar);
		
	}

}

在这里插入图片描述

例子2

package tempTestTry;

import java.time.LocalDateTime;
import java.time.temporal.WeekFields;
import java.util.Calendar;

public class LocalDateTime获取当前周是第几周2306222303 {
	
	public static void main(String...arguments)throws Exception{
		
		
		System.out.println("LocalDateTime.now().get(WeekFields.ISO.weekOfYear())="+LocalDateTime.now().get(WeekFields.ISO.weekOfYear()));
		
		
		System.out.println("LocalDateTime.now().get(WeekFields.SUNDAY_START.weekOfYear())="+LocalDateTime.now().get(WeekFields.SUNDAY_START.weekOfYear()));
		
		
		System.out.println("Calendar.getInstance().get(Calendar.WEEK_OF_YEAR)="+Calendar.getInstance().get(Calendar.WEEK_OF_YEAR));
		
		
	}

}

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kfepiza

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值