用java输入年份月份输出,java输入年份输出日历
- 十二生肖
- 用户投稿
- 2025-11-16 12:46:12
一.java输入一个年份生肖(输入一个年份算出生肖)前言
大家好,如果您还对java输入一个年份生肖(输入一个年份算出生肖)不太了解,没有关系,今天就由本站seo导航为大家分享java输入一个年份生肖(输入一个年份算出生肖)的知识,还望可以解决大家的问题,下面我们就开始吧!
二.java输入一个年份生肖(输入一个年份算出生肖)正文
本篇文章给大家谈谈java输入一个年份生肖,以及输入一个年份算出生肖对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
1、编写代码输入年份.计算出该年是12生肖中的哪一年,谁帮忙用java语言编写一下,感激不尽2、编写程序,输入一个年份,判断该年属相.(提示switch-case)3、如何用java在日期计算机中添加代码使它可以计算出属相?急!!!急!!!编写代码输入年份.计算出该年是12生肖中的哪一年,谁帮忙用java语言编写一下,感激不尽
先使用bufferedreaderinputstreamreadersystem.in读取键盘
然后stringstr=bufferedreader.readline();
intindex=Integer.parseInt(str);
编写程序,输入一个年份,判断该年属相.(提示switch-case)
int?year0=2008;?//2008年是鼠年,作为基准
if?(n0)?n+=12;?//求余时,n可能是负数,如果是负数则加12?
如何用java在日期计算机中添加代码使它可以计算出属相?急!!!急!!!
final?static?String?chineseNumber[]?=?{?"正",?"二",?"三",?"四",?"五",?"六",?"七",
"八",?"九",?"十",?"十一",?"腊"?};
final?static?String?chineseNumber1[]?=?{?"一",?"二",?"三",?"四",?"五",?"六",?"七",
"八",?"九",?"十",?"十一",?"十二"?};
static?SimpleDateFormat?chineseDateFormat?=?new?SimpleDateFormat("yyyy-MM-dd");
final?static?long[]?lunarInfo?=?new?long[]?{?0x04bd8,?0x04ae0,?0x0a570,
0x054d5,?0x0d260,?0x0d950,?0x16554,?0x056a0,?0x09ad0,?0x055d2,
0x04ae0,?0x0a5b6,?0x0a4d0,?0x0d250,?0x1d255,?0x0b540,?0x0d6a0,
0x0ada2,?0x095b0,?0x14977,?0x04970,?0x0a4b0,?0x0b4b5,?0x06a50,
0x06d40,?0x1ab54,?0x02b60,?0x09570,?0x052f2,?0x04970,?0x06566,
0x0d4a0,?0x0ea50,?0x06e95,?0x05ad0,?0x02b60,?0x186e3,?0x092e0,
0x1c8d7,?0x0c950,?0x0d4a0,?0x1d8a6,?0x0b550,?0x056a0,?0x1a5b4,
0x025d0,?0x092d0,?0x0d2b2,?0x0a950,?0x0b557,?0x06ca0,?0x0b550,
0x15355,?0x04da0,?0x0a5d0,?0x14573,?0x052d0,?0x0a9a8,?0x0e950,
0x06aa0,?0x0aea6,?0x0ab50,?0x04b60,?0x0aae4,?0x0a570,?0x05260,
0x0f263,?0x0d950,?0x05b57,?0x056a0,?0x096d0,?0x04dd5,?0x04ad0,
0x0a4d0,?0x0d4d4,?0x0d250,?0x0d558,?0x0b540,?0x0b5a0,?0x195a6,
0x095b0,?0x049b0,?0x0a974,?0x0a4b0,?0x0b27a,?0x06a50,?0x06d40,
0x0af46,?0x0ab60,?0x09570,?0x04af5,?0x04970,?0x064b0,?0x074a3,
0x0ea50,?0x06b58,?0x055c0,?0x0ab60,?0x096d5,?0x092e0,?0x0c960,
0x0d954,?0x0d4a0,?0x0da50,?0x07552,?0x056a0,?0x0abb7,?0x025d0,
0x092d0,?0x0cab5,?0x0a950,?0x0b4a0,?0x0baa4,?0x0ad50,?0x055d9,
0x04ba0,?0x0a5b0,?0x15176,?0x052b0,?0x0a930,?0x07954,?0x06aa0,
0x0ad50,?0x05b52,?0x04b60,?0x0a6e6,?0x0a4e0,?0x0d260,?0x0ea65,
0x0d530,?0x05aa0,?0x076a3,?0x096d0,?0x04bd7,?0x04ad0,?0x0a4d0,
0x1d0b6,?0x0d250,?0x0d520,?0x0dd45,?0x0b5a0,?0x056d0,?0x055b2,
0x049b0,?0x0a577,?0x0a4b0,?0x0aa50,?0x1b255,?0x06d20,?0x0ada0?};
//?======?传回农历?y年的总天数
final?private?static?int?yearDays(int?y)?{
for?(i?=?0x8000;?i0x8;?i?=?1)?{
if?((lunarInfo[y?-?1900]i)?!=?0)
return?(sum?+?leapDays(y));
//?======?传回农历?y年闰月的天数
final?private?static?int?leapDays(int?y)?{
if?((lunarInfo[y?-?1900]0x10000)?!=?0)
//?======?传回农历?y年闰哪个月?1-12?,?没闰传回?0
final?private?static?int?leapMonth(int?y)?{
return?(int)?(lunarInfo[y?-?1900]0xf);
//?======?传回农历?y年m月的总天数
final?private?static?int?monthDays(int?y,?int?m)?{
if?((lunarInfo[y?-?1900](0x10000m))?==?0)
//?======?传回农历?y年的生肖
final?public?String?animalsYear()?{
final?String[]?Animals?=?new?String[]?{?"鼠",?"牛",?"虎",?"兔",?"龙",?"蛇",
"马",?"羊",?"猴",?"鸡",?"狗",?"猪"?};

//?======?传入?月日的offset?传回干支,?0=甲子
final?private?static?String?cyclicalm(int?num)?{
final?String[]?Gan?=?new?String[]?{?"甲",?"乙",?"丙",?"丁",?"戊",?"己",?"庚",
final?String[]?Zhi?=?new?String[]?{?"子",?"丑",?"寅",?"卯",?"辰",?"巳",?"午",
"未",?"申",?"酉",?"戌",?"亥"?};
return?(Gan[num?%?10]?+?Zhi[num?%?12]);
//?======?传入?offset?传回干支,?0=甲子
final?public?String?cyclical()?{
int?num?=?year?-?1900?+?36;
public?Lunar(Calendar?cal)?{
int?yearCyl,?monCyl,?dayCyl;
baseDate?=?chineseDateFormat.parse("1900-1-31");
}?catch?(ParseException?e)?{
e.printStackTrace();?//?To?change?body?of?catch?statement?use
//?Options?|?File?Templates.
//?求出和1900年1月31日相差的天数
int?offset?=?(int)?((cal.getTime().getTime()?-?baseDate.getTime())?/?86400000L);
//?用offset减去每农历年的天数
int?iYear,?daysOfYear?=?0;
for?(iYear?=?1900;?iYear2050offset0;?iYear++)?{
daysOfYear?=?yearDays(iYear);
leapMonth?=?leapMonth(iYear);?//?闰哪个月,1-12
//?用当年的天数offset,逐个减去每月(农历)的天数,求出当天是本月的第几天
int?iMonth,?daysOfMonth?=?0;
for?(iMonth?=?1;?iMonth13offset0;?iMonth++)?{
if?(leapMonth0iMonth?==?(leapMonth?+?1)!leap)?{
daysOfMonth?=?leapDays(year);
daysOfMonth?=?monthDays(year,?iMonth);
if?(leapiMonth?==?(leapMonth?+?1))
//?offset为0时,并且刚才计算的月份是闰月,要校正
if?(offset?==?0leapMonth0iMonth?==?leapMonth?+?1)?{
//?offset小于0时,也要校正
public?static?String?getChinaDayString(int?day)?{
String?chineseTen[]?=?{?"初",?"十",?"廿",?"卅"?};
int?n?=?day?%?10?==?0?9?:?day?%?10?-?1;
return?chineseTen[day?/?10]?+?chineseNumber1[n];
public?String?toString()?{
return?(leap?"闰"?:?"")?+?chineseNumber[month?-?1]?+?"月"
+?getChinaDayString(day);
public?String?getChinaWeekdayString(String?weekday)?{
if?(weekday.equals("Mon"))
if?(weekday.equals("Tue"))
if?(weekday.equals("Wed"))
if?(weekday.equals("Thu"))
if?(weekday.equals("Fri"))
if?(weekday.equals("Sat"))
if?(weekday.equals("Sun"))
public?static?void?main(String[]?args)?throws?ParseException?{
Calendar?today?=?Calendar.getInstance();
//today.setTime(new?java.util.Date());//?加载当前日期
today.setTime(chineseDateFormat.parse("2015-04-02"));//加载自定义日期
Lunar?lunar?=?new?Lunar(today);
System.out.print(lunar.cyclical()?+?"年");//?计算输出阴历年份
System.out.println(lunar.toString());//?计算输出阴历日期
System.out.println(lunar.animalsYear());//?计算输出属相
System.out.println(new?java.sql.Date(today.getTime().getTime()));//?输出阳历日期
System.out.println("星期"
+?lunar.getChinaWeekdayString(today.getTime().toString()
.substring(0,?3)));//?计算输出星期几
关于java输入一个年份生肖和输入一个年份算出生肖的介绍到此就结束了,不知道你从中找到你需要的信息了吗?如果你还想了解更多这方面的信息,记得收藏关注本站。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 1919100645@qq.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表