Android 日历-周视图

复制代码
复制代码
//获取当天
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH) + 1; // 注意:月份是从0开始的
int day = calendar.get(Calendar.DAY_OF_MONTH);
复制代码
//基姆拉尔森计算公式根据日期判断星期几
public  String CalculateWeekDay(int y, int m, int d) {
    if(m < 1 || m >12){
        System.out.println("你输入的月份不再范围内,请重新输入!");
    }
    if (m == 1 || m == 2) {
        m += 12;
        y--;
    }
    String week = null;
    int iWeek = (d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400) % 7;
    switch (iWeek) {
        case 0:
            week = "星期一";
            break;
        case 1:
            week = "星期二";
            break;
        case 2:
            week = "星期三";
            break;
        case 3:
            week = "星期四";
            break;
        case 4:
            week = "星期五";
            break;
        case 5:
            week = "星期六";
            break;
        case 6:
            week = "星期日";
            break;
        default:
           break;
    }

    return week;
}

//  获取未来一星期内的日期集合

public static List<String> getNextSevenDays() {
    List<String> nextSevenDays = new ArrayList<>();
    Calendar calendar = Calendar.getInstance();

    SimpleDateFormat dateFormat = new SimpleDateFormat("MM.dd");

    for (int i = 0; i < 6; i++) {
        nextSevenDays.add(dateFormat.format(calendar.getTime()));
        calendar.add(Calendar.DATE, 1); // 增加一天
    }

    return nextSevenDays;
}
相关推荐
金銀銅鐵20 分钟前
[java] 编译之后的记录类(Record Classes)长什么样子(上)
java·jvm·后端
c++之路31 分钟前
C++信号处理
开发语言·c++·信号处理
开发者联盟league1 小时前
在windows上安装和运行rocketmq
windows·rocketmq
野生技术架构师2 小时前
金三银四面试总结篇,汇总 Java 面试突击班后的面试小册
java·面试·职场和发展
Legendary_0082 小时前
LDR6500:USB‑C DRP PD协议芯片技术详解与应用实践
c语言·开发语言
小袁拒绝摆烂3 小时前
多表关联大平层转JSON树形结构
java·json
2301_800976933 小时前
正则表达式
开发语言·python·正则表达式
故事还在继续吗3 小时前
C++20关键特性
开发语言·c++·c++20
青少儿编程课堂3 小时前
2026青少儿信息素养大赛备赛指南!Python/Scratch/C++备考要点
开发语言·c++·python