|
1
6
似乎只要检查一下月份就可以了:
|
|
2
3
这里有一些很好的答案,但它们已经过时了。java.time类使这项工作更加容易。 Java.时间与最早版本的Java捆绑在一起的麻烦的旧类已经被 java.time 构建到Java 8和以后的类。见 Oracle Tutorial . 许多功能已经被移植到Java 6和7中。 ThreeTen-Backport 并进一步适应安卓 ThreeTenABP .
|
|
|
3
1
我觉得受人恩惠,但受宠若惊。所以我来做。 这不仅检查月份,而且检查每月的某一天。
我相信这很可怕,可以改进。在评论中告诉我。 |
|
|
4
1
嗯,它可以像
在评论中,我被指责为一个更好的解决方案:枚举:
|
|
5
1
|
|
|
6
1
尝试使用哈希表或枚举。您可以将日期转换为某个值(1月1日为1,…),然后为某个字段创建容器。或者可以对月份进行枚举。一月:冬天,二月:冬天,…七月:夏天,等等 |
|
|
7
0
因为在这个范围内,所有季节都是完整的月份,所以您可以切换到日期的月份:
我建议使用所有12个日历常量来完成整个切换,而不是最后一个日历常量的默认值。然后可以确保输入正确,例如
最后。 根据您的用例,您可能还希望在季节中使用枚举,而不是简单的字符串。 注意Debug .GETMUNTH()方法,你应该使用java. UTI.Calase.GET(日历。月)来代替。(只需使用calendar.setdate(yourdate)将日期转换为日历) |
|
|
8
0
简单解
|
|
|
9
0
您问题的标题非常笼统,因此大多数用户会首先想到天文季节。尽管您问题的详细内容仅限于自定义的日期范围,但这一限制可能是由于无法计算天文情况造成的,因此我敢对这个旧问题发表答案,也适用于天文情况。 这里的大多数答案都是基于完整的月份。我在这里举两个例子来说明天文季节和基于任意日期范围的季节。 a)任意日期范围到季节的映射
在这里
我们肯定需要额外的信息,具体的时区
或者抵消,否则我们不能翻译一个瞬间(就像老式的
我使用了一个简单的helper枚举
b)天文季节这里我们还需要一个额外的信息,即如果季节是在北半球或南半球。我的图书馆 Time4J 基于预定义的枚举提供以下解决方案 AstronomicalSeason 使用版本v5.2:
|
|
|
user29759326 · 如何返回递归函数中的最后一个值? 1 年前 |
|
|
malife89 · 将java中的字符串读取为正确的日期格式 1 年前 |
|
|
Tim · 在java中,有没有更快的方法将字节数组写入文件? 1 年前 |
|
|
rudraraj · java中未声明最终变量 1 年前 |
|
|
Bala Ji · 以下BFS的实施效率如何? 1 年前 |