通过生日获取年龄+生肖+星座工具类

通过生日获取年龄+生肖+星座工具类

🍅 Java学习路线:搬砖工的Java学习路线
🍅 作者:程序员小王
🍅 程序员小王的博客:https://www.wolai.com/wnaghengjie/ahNwvAUPG2Hb1Sy7Z8waaF
🍅 扫描主页左侧二维码,加我微信 一起学习、一起进步
🍅 欢迎点赞 👍 收藏 ⭐留言 📝
🍅 如有编辑错误联系作者,如果有比较好的文章欢迎分享给我,我会取其精华去其糟粕
BirthdayUtil:

package com.tjcu.utils;import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;public class BirthdayUtil {//根据生日计算生肖,年龄,星座private final static int[] dayArr = new int[] { 20, 19, 21, 20, 21, 22, 23,23, 23, 24, 23, 22 };private final static ArrayList<String> constellationList = new ArrayList<>();//存放星座的集合static {constellationList.add(0, "水瓶座");constellationList.add(1, "双鱼座");constellationList.add(2, "白羊座");constellationList.add(3, "金牛座");constellationList.add(4, "双子座");constellationList.add(5, "巨蟹座");constellationList.add(6, "狮子座");constellationList.add(7, "处女座");constellationList.add(8, "天秤座");constellationList.add(9, "天蝎座");constellationList.add(10, "射手座");constellationList.add(11, "魔羯座");}//获得年龄public static Integer  getAge(Date birthday){int year1 = birthday.getYear();Date date = new Date();int year2 = date.getYear();return  year2-year1;}//获得生肖public static String getChineseZodiac(Date birthday) {int year = birthday.getYear();//0代表1900年if (year < 0) {return "未知";}int start = 0;String[] years = new String[] { "鼠", "牛", "虎", "兔", "龙", "蛇", "马", "羊","猴", "鸡", "狗", "猪" };return years[(year - start) % 12];}//获得星座/*** 传入日期,返回星座*/public static String getConstellation(Date date) {String constellation = "";Calendar birthday = Calendar.getInstance();birthday.setTime(date);int month = birthday.get(Calendar.MONTH) + 1;int day = birthday.get(Calendar.DAY_OF_MONTH);switch (month) {case 1://Capricorn 摩羯座(12月22日~1月20日)constellation = day <= 20 ? constellationList.get(11) : constellationList.get(0);break;case 2://Aquarius 水瓶座(1月21日~2月19日)constellation = day <= 19 ? constellationList.get(0) : constellationList.get(1);break;case 3://Pisces 双鱼座(2月20日~3月20日)constellation = day <= 20 ? constellationList.get(1) : constellationList.get(2);break;case 4://白羊座 3月21日~4月20日constellation = day <= 20 ? constellationList.get(2) : constellationList.get(3);break;case 5://金牛座 4月21~5月21日constellation = day <= 21 ? constellationList.get(3) : constellationList.get(4);break;case 6://双子座 5月22日~6月21日constellation = day <= 21 ? constellationList.get(4) : constellationList.get(5);break;case 7://Cancer 巨蟹座(6月22日~7月22日)constellation = day <= 22 ? constellationList.get(5) : constellationList.get(6);break;case 8://Leo 狮子座(7月23日~8月23日)constellation = day <= 23 ? constellationList.get(6) : constellationList.get(7);break;case 9://Virgo 处女座(8月24日~9月23日)constellation = day <= 23 ? constellationList.get(7) : constellationList.get(8);break;case 10://Libra 天秤座(9月24日~10月23日)constellation = day <= 23 ? constellationList.get(8) : constellationList.get(9);break;case 11://Scorpio 天蝎座(10月24日~11月22日)constellation = day <= 22 ? constellationList.get(9) : constellationList.get(10);break;case 12://Sagittarius 射手座(11月23日~12月21日)constellation = day <= 21 ? constellationList.get(10) : constellationList.get(11);break;}return constellation;}}

测试:

 student.setSbirthday(new Date());Date birthday = student.getSbirthday();//获取年龄Integer age = BirthdayUtil.getAge(birthday);//获取生肖String attr = BirthdayUtil.getChineseZodiac(birthday);//获取星座String star = BirthdayUtil.getConstellation(birthday);System.out.println("生日:"+birthday);System.out.println("年龄:"+attr);System.out.println("生肖:"+attr);System.out.println("星座:"+star);

效果图:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/71643.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用生辰八字取名的方法

2019独角兽企业重金招聘Python工程师标准>>> 生辰八字”是我们常说的一种取名的方式&#xff0c;在古代的时候&#xff0c;男女双方是否合适都会拿双方的生辰八字进行匹配&#xff0c;那么该如何使用八字取名呢&#xff1f; 首先我们需要进行测试自己的生辰八字&…

用计算机找到自己的另一半,生辰八字算婚期计算器 免费算个人感情婚姻的另一半...

免费算命东方神算 免费算命2020年最准的免费卜易算 社会高速发展的同时,我们也不能摒弃传统文化,要将科技和文化相结合,现在就有许多网站提供了在线占卜的功能,首页上大大的标题写着类似免费算命东方神算,并且是不是就举办一些免费算命2020年最准的免费卜易算这样比较有噱…

最简单日柱推算法_哪些人在九运中最好运

三元九运是中国划分大时间的方法,自古便记载于黄历上,并结合干支历使用,多用于风水学上。 中国古代先民仰观天文,俯察地理,经过漫长时期的观测,发现太阳系各大行星的运转规律与地球上自然和人事现象的运动变化规律之间存在着某种内在规律性联系。这种天体运行规律循环往复…

万年历、黄历,获取每日的宜忌、五行、冲煞、值神、彭祖百忌、吉神宜趋、今日胎神、凶神宜忌、二十八星宿、建除十二神

环境&#xff1a;jdk8 改写自某万年历js代码&#xff0c;故可能有些代码不规范&#xff0c;不过结果是没问题的。 application.properties jxdata{"1-甲子":{"JSYQ":"天恩 母仓 时阳 生气 益后 青龙","XSYJ":"灾煞 天火 四忌 八…

算命大师元真先生解读周易人生命运

今天我们就来和先生谈谈周易里的人生命运。 元真先生说自古有“易经为群经之首、大道之源”之美誉,为何周易在古代能有如此之高的地位,通观历史我们不难发现,周易是传统思想文化中自然哲学与人文实践的理论的根源,是古代帝王之学,政治家、军事家、商家的必修课。《周易》…

八字喜用神php源码,免费查八字喜用神的软件 通关用神

八字预测学是一项古老的学说&#xff0c;可谓是家喻户晓&#xff0c;过去为无数先人提供了人生经验&#xff0c;经过几千年的传承与发展&#xff0c;理论体系更为完善&#xff0c;所以若是想要自己的人生顺心顺意&#xff0c;了解自己的八字信息势在必行&#xff0c;本期就带您…

感谢周易算命大师元真先生

和大家说说我的亲身经历,也仅以此文感谢周易大师元真先生对我及家人的帮助,以前的我从不信命,也很少算命,但是经历过一次婚姻危机,让我彻底毁了三观,现在拿出来分享给迷茫的人们, 我叫刘小婷一个很单纯的女人,一门心思就围着孩子丈夫家庭转。老公是个很有能力的人,公司…

生辰八字五行计算

本文介绍生辰八字和八字五行的一种算法。站内有人在查询生辰八字的算法&#xff0c;此题本人也感兴趣。故以此文以续貂尾。 生辰八字计算要点是节气日&#xff0c;年柱以立春起&#xff0c;月柱以是月节气日起&#xff0c;故先要计算月首的节气日。本节气算法的节气时刻精度差些…

臭名昭著的手机验证码功能是如何实现的

点击▲关注 “爪哇笔记” 给公众号标星置顶更多精彩 第一时间直达前言 现在基本上各种手机APP注册都会用到手机验证码&#xff0c;包括一些PC端网站也会使用手机号作为唯一标识验证&#xff01; 恰巧&#xff0c;小明的老板&#xff0c;让其开发一个用户注册的功能&#xff0…

安全机制之手机移动端验证码炸弹处理策略

验证码炸弹处理策略 依据现有软件运行情况分析:用户登陆时忘记密码&#xff0c;需要通过短信验证码的方法登录。由于恶意用户或异常伙伴服务的存在&#xff0c;当系统发生各种故障和错误或受到攻击和侵害(被验证码炸弹袭击)时&#xff0c;系统往往无法正常工作&#xff0c;进而…

技术人员需要了解的手机验证码登录风险

手机验证码登录是一种常见的应用登录方式&#xff0c;简单方便&#xff0c;不用记忆密码&#xff0c;市面上能见到的APP基本都支持这种登录方式&#xff0c;很多应用还把登录和注册集成到了一起&#xff0c;注册登录一气呵成&#xff0c;给用户省去了很多麻烦&#xff0c;颇有一…

某浪新闻APP之登录验证码下发短信另类分析

前言 我又来了。今天的主角是某浪新闻APP 工具 fiddler&#xff08;抓包工具&#xff09;Drony&#xff08;习惯用了&#xff0c;不用去手机设置里面填写代{过}{滤}理地址和端口。。&#xff09;jadx-gui&#xff08;反编译app&#xff09;root环境&#xff08;我这是另类的…

【大数据AI人工智能】图文详解 ChatGPT、文心一言等大模型背后的 Transformer 算法原理

论文 Attention is All You Need 中推荐了 Transformer 。 The dominant sequence transduction models are based on complex recurrent or convolutional neural networks in an encoder-decoder configuration. The best performing models also connect the encoder and …

最强AI导师指令:一个Prompt让ChatGPT秒变金牌辅导,从小学生到博士后,让你1天学会1个月的知识!

原文&#xff1a;最强AI导师指令&#xff1a;一个Prompt让ChatGPT秒变金牌辅导&#xff0c;从小学生到博士后&#xff0c;让你1天学会1个月 视频&#xff1a;https://www.douyin.com/video/7236548869855792440 你可能看过无数个自媒体人讲解该如何写好一个ChatGPT指令&#…

AIGC消息天天不断,到底什么是AIGC?

最近&#xff0c;AIGC领域的新消息可以说是日新月异&#xff0c;今天国外某IT大佬推出一个新模型&#xff0c;明天国内某大厂推出一个新平台。 说来说去&#xff0c;到底什么是AIGC呢&#xff1f; AIGC的全称是AI Generated Content&#xff0c;也就是利用人工智能技术自动生成…

验证码库 Captcha的使用以及遇到的问题解决

https://blog.csdn.net/u012896330/article/details/75669828 在使用验证码进行验证时, 三处需要注意(setting中的配置,url中的路由,models文件中的字段要有capture)

青瓷引擎问答集锦(一)

青瓷引擎自15年12月中旬正式发布以来&#xff0c;获得了很多开发者小伙伴的支持和认可&#xff0c;大家在使用过程中&#xff0c;也遇到了一些问题&#xff0c;我们将这些问题收集整理出一些比较典型的与大家分享&#xff0c;希望能和大家一起进步。 一. 问&#xff1a;青瓷引擎…

C语言/C++常见习题问答集锦(二十四)

C语言/C常见习题问答集锦(二十四) 程序之美 1、编写一个函数判断一个整数是否左右对称数&#xff0c; 要求函数为&#xff1a;fun&#xff08;long n&#xff09; 要求在主程序中输入一个整数&#xff0c;如果该数对称&#xff0c;输出“YES”否则输出“NO” int fun(long n)…

C语言/C++常见习题问答集锦(四)

C语言/C常见习题问答集锦(四) 程序之美 1、c语言分别用 while 语句、do-while 语句编写程序&#xff0c;计算 e≈11/1&#xff01; 1/2&#xff01; …1/n&#xff01;精度为10-5&#xff0c;输出e和总项数 #include <stdio.h>int main() {int i,t;double sum;for(i0,t…

Edge集锦没有同步按钮 - 待解决

问题 日期&#xff1a;2023年4月6日 2023年2月份左右&#xff0c;更新Edge后&#xff0c;集锦的同步选项消失了&#xff0c;右键标签页也没有添加到集锦的选项&#xff0c;如下图。 详细说明此问题&#xff0c;Edge一旦登录个人账号&#xff0c;集锦同步选项就会消失&#…