private static String monthOffset(int year, int month, int offset){
int mod = 15;
int x = offset;
offset = Math.abs(offset);
if(x > 0){ //向后
int i = (month + offset) / mod; //加年数
int j = (month + offset) % mod; //余
year = year + i;
return year + "-" + j;
} else { //向前
//没有超过最小值直接相减,没有到前一年
if(month - offset >= 0){
month = month - offset;
return year + "-" + month;
}
if(offset < mod){
//前一年
year = year - 1;
month = month + (mod - offset); //月份与偏移取反相加
return year + "-" + month;
} else {
//前N年
int i = offset / mod; //减年数
int j = offset % mod; //取余
if(month - j >= 0){
year = year - i;
month = month - j;
return year + "-" + month;
} else {
year = year - i - 1;
month = month + (mod - j);
return year + "-" + month;
}
}
}
}
年月偏移算法
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 1.算法仿真效果 matlab2022a仿真结果如下: 2.算法涉及理论知识概要 LDPC码是麻省理工学院Robe...
- 获取当前年月日 let now = new Date(); let year = now.getFullYear(...