实现步骤:
1、获取当前时间
2、判断出生日期是否小于当前时间,如果大于,则引发一场
3、从当前时间中取出年、月、日;从出生日期中取出年、月、日,年份相减
4、然后做具体判断
示例代码如下:
publicstaticintgetAge(DatebirthDay)throwsException{//获取当前系统时间
Calendarcal=Calendar.getInstance();
//如果出生日期大于当前时间,则抛出异常
if(cal.before(birthDay)){
thrownewIllegalArgumentException(
"ThebirthDayisbeforeNow.It'sunbelievable!");
}
//取出系统当前时间的年、月、日部分
intyearNow=cal.get(Calendar.YEAR);
intmonthNow=cal.get(Calendar.MONTH);
intdayOfMonthNow=cal.get(Calendar.DAY_OF_MONTH);
//将日期设置为出生日期
cal.setTime(birthDay);
//取出出生日期的年、月、日部分
intyearBirth=cal.get(Calendar.YEAR);
intmonthBirth=cal.get(Calendar.MONTH);
intdayOfMonthBirth=cal.get(Calendar.DAY_OF_MONTH);
//当前年份与出生年份相减,初步计算年龄
intage=yearNow-yearBirth;
//当前月份与出生日期的月份相比,如果月份小于出生月份,则年龄上减1,表示不满多少周岁
if(monthNow<=monthBirth){
//如果月份相等,在比较日期,如果当前日,小于出生日,也减1,表示不满多少周岁
if(monthNow==monthBirth){
if(dayOfMonthNow<dayOfMonthBirth)age--;
}else{
age--;
}
}
System.out.println("age:"+age);
returnage;
}
用JAVA写星座运势,算法怎么写?
需求明确点。
粗略来讲也就是根据输入的不同的星座显示不同的运势。根据需求的复杂度,可以很容易,也可以很复杂。
请问1986年12月22晚上22.14出生的是什么星座
魔羯座
12月22日~1月20日 主宰行星:土星 属性:地相星座
冬天出生的生辰星位或太阳在魔羯座的人的特点:
魔羯座是象征着冬天开始的星座。冬天把绝对意识毫无保留地奉献给了魔羯座出生的人。魔羯座的人,尤其当有几个行星同时处于你的星座时,你将是一个具有现实主义思想和有抱负的人;同时你又容易被热烈的感情征服,是一个有强烈的忘我精神的人。你表情平静而淡漠,不太容易接近,喜欢离群独处。你害怕别人毫无意义的谈话会占据你宝贵的时间,也不能接受别人对你粗暴无礼你严肃认真、思想深沉、始终如一、忠诚可靠、正直廉洁并富有献身精神。另外,你坚如磐石、毫不妥协,不姑息宽容,也从不报任何幻想。你深居简出,喜欢把自己关在象牙塔中,这对你比去经历激情的洗礼要好得多。谨慎可能会使你错过许多良机,于是你便会产生失望和怀才不遇之感。然而,你确实是个有强烈责任感的、勤奋的劳动者和杰出的组织者。如同攀登山峰一样,魔羯座的人的光辉前程,需要用坚持不懈的努力去换取。你的成功主要靠你艰苦奋斗的精神和你的工作能力,而不能指望运气的恩赐。你不喜欢碌碌无为,无所事事,你的实际感促使你不断地改进自己的工作质量和生活环境。
魔羯座的人是以事业为主的,常常把个人生活置之度外。一切都从最现实的观点出发,脚踏实地的从零做起,并追求实实在在的结果。你渴望成功,也许这是为了补偿内心的某种需求或深藏的孤独感,但你从来不会把感情与事业混为一谈。你的逻辑思想、客观态度和组织观念有可能使你进入高职要位,有时还会把你引向社会或政治生活的道路上去。许多国家领导人,在你们的天宫图中都是以魔羯座的影响为主。
一般地说,在青年时期,由于缺乏热情,不太会赢得别人的好感,年轻的时候总是困难重重,有时甚至会历尽艰辛。然而这种处境反会激发你为自己光明的未来奋斗的决心,如果你能把自己的事业坚持到底的话,随着年龄的增长,你的智力优势会越来越显露出来。从五十多岁起,魔羯座的人才能进入你人生的黄金时代。到了晚年,你在精神上和物质上都会达到完美的境界,会品尝到你劳动硕果的甘甜。
魔羯座的人非常珍视用自己辛勤劳动换来的财富。开销很有计划,不喜欢挥霍浪费。勤俭节约是其本色。你从事传统的、有条不紊的工作要比创新的工作更容易成绩卓著。尤其是当土星在魔羯座或水瓶座,或在黄道第Ⅰ、Ⅹ、Ⅶ或Ⅳ宫的时候。
魔羯座的男性
魔羯座的男性很少表露自己真正的感情,基本上是一个孤独的人。你的生活是在一丝不苟的精神、高度的责任感和逻辑头脑的严格控制下进行的。激情一般是由雄心和权力欲望调动起来的。你总是在辛勤地耕耘,有无懈可击的工作态度。你容易认为别人所做的一切都不理想,一定要自己亲自动手。时间将会证明你的成功。
你有时不想念自己,也不想念别人,思想经常处于忧疑不定的状态中。你对女性保持着一定的距离,因为你怀疑她们的感情的真诚程度。你的感情是很难触及到的。只有当你真心倾与一个女性的时候,深藏的爱才能迸发出来,而且这种爱是经久不衰的。
你的情绪经常带有忧郁的成分,只有在知已之间或感到自己被人信任的时候,你的脸上才会露出笑容。否则,你总是沉默不语和静静地观察。结婚以后,你的心仍然会停留在事业上,经常忙于工作,很少有空闲时间。但你非常忠诚,对自己的亲人有极强的责任感,完全可以信赖你。你的亲人应该理解你,对你的周期性的忧郁不必理会和苟求。
生辰星位在巨蟹座的女性温顺、娴雅,你能理解你的性格,并会带给你所需要的温情和无微不至的关怀。
选择处女座的女性作伴侣,有助于在互相尊重的基础上建立一个安定和睦的家庭。
与魔羯座的女性生活在一起,你们会志同道合,都对工作有强烈的责任感。
魔羯座的女性
你是个颇有自知之明的人,但很难从个人生活的小圈子里摆脱出来。你需要别人对你的理解和信任。在爱情方面,你最大的问题是任凭对方的追求。一般地说,你总是力图用理智去支配自己的行动。你的事业心胜过你的情感。
你用很大的勇气和能力去处理自己自己生活中的一切事情,并愿意自负其责。你希望自己的生活能有可靠的物质保障,这样才能感到心地坦然。因为你总是担心会失去什么,即使在物质生活条件十分优裕的情况下,这种不必要的念头也时常浮现在脑海中。只要土星在你的生辰天宫图中影响力较强,或者它与月亮或金星呈不好的方位,那么忧郁将是你生活中无法摆脱的伴侣。一旦你找到了理想的爱人,你会全身心地投入到生活中去,以最大的能力去帮助和照顾丈夫、孩子,从无任何怨言。如果你的爱情受到了意外的挫折,你会到事业中去寻求欢乐和安慰,用自己的才能去实现精神上的平衡。
魔羯座的女性喜欢真诚的巨蟹座的男性,他的温情会使你的性格开朗起来。
与处女座的男性将是理想和幸福的结合。
与金牛座的男性同路,能建立一个安定和睦的家庭。
魔羯座的儿童
魔羯座的孩子的思想成熟得特别早,很小就进入成年人的行列,经常对人和事物产生防御心理。
在学校时你有可能是一个较孤独的孩子,这容易使你产生深刻的伤感情绪。为此,应该督促你到室外去和同学们在一起,谈笑风生、抒展心情,这样可使你身心不至沉重呆板。
魔羯座的孩子热爱学习,有自己积累知识的方法和严格的组织纪律观念。喜欢收集和归类。这是个学习、工作和生活有条不紊,过分追求完美的孩子,无论任何事你都希望做得精益求精,这些优秀品质将会帮助你走上重要的岗位。许多学者和政治家都诞生在这一星座。
魔羯座的孩子非常严肃、认真,不容被人轻待,这是你追求上进的基础。
你的理想出路是管理、工业、考古、金融、政治批发贸易以及有关土地、地质等职业。
魔羯座不同10°内出生的人的基本性格:
出生日期:12月22日~12月31日
性格特征:这是一个既孤僻又有雄心的性格。行动之前往往先权衡利弊,说话不喜欢开门见山。有极强的工作热情和组织纪律观念,从不放任自己,这一点为你取得卓越成就铺平了道路。然而你有时也缺乏自信心和对别人的信赖这是你经常忧郁的苦恼的根源之一。为了实现你的理想,你不惜付出任何辛劳。
动力来源:成就
出生日期:1月1日~1月10日
性格特征:具有高度的工作热情和埋头苦干的精神。持之以恒的信念和固守思想,会使你沿着一条道路始终不渝地走下去,从来不想入非非。感情强烈而有些自我意识过强。
动力来源:现实感
出生日期:1月11日~1月20日
性格特征:总是在追求着尽善尽美。在智力、学习和研究方面有出色的天赋。品格廉正,有自知之明,但趋于优柔寡断,容易气馁。往往是屈服于形势,而缺乏自我超越的能力。
动力来源:实现
出生在魔羯座的著名人士有:莫里哀(法国17世纪伟大剧作家)、巴斯德(法国微生物学家)、毛泽东、斯大林、萨达特(埃及前总统)。
总而言之,魔羯座的你:
审慎的魔羯座的人说:"我不相信"。
表达爱情的方式是:富有理智的。
是一个:喜欢从容不迫、深思熟虑的人。
渴望:能承担家庭义务的爱人。
受骗:由于不敢尝试。
喜欢:去工作。
害怕:迟到。
追求:永远正确。
弱点:参与其事。
有利条件:时间。
不利条件:疑虑。
假期生活:登山运动、下象棋,洞穴探险。
开支:扩大自己的经济积累。
吉祥金属:铅。
吉祥宝石:缟玛瑙
喜欢的颜色:黑色或海蓝色。
吉祥日:星期六。
吉祥数字:8、16、26、35。
喜欢的场所:古老的山石景观和幽静的森林。
吉祥植物:颠茄、常春藤、柏树、香菜、曼陀罗、树莓。
居住条件:室内要充满安谧的气氛,有一丝凉意;古香古色的家具和陈设有古玩、传统手工艺品。
理想旅居国:希腊、阿尔巴尼亚、玻利维亚、墨西哥、阿富汗、印度、保加利亚。
以助人为快乐之本。
英文日期年月缩写
英文星期缩写:星期一 Mon.星期二 Tues.星期三Wed.星期四 Thur.星期五 Fri.星期六 Sat.。星期天 Sun。(缩写的时候后面的点不能去掉)
月份的英语缩写 :一月 Jan. 二月 Feb. 三月 Mar. 四月 Apr. 五月 May 六月 Jun. 七月 Jul. 八月 Aug. 九月 Sept.十月 Oct.十一月 Nov.十二月(缩写的时候后面的点不能去掉)
英文日期缩写:1st 、2nd、 3rd 、4th、 5th、 6th、 7th、 8th、 9th 、10th ;11th 、12th 、13th 、14th 、15th 、16th、 17th 、18th、 19th、 20th ;21st、 22nd 、23rd、 24th、 25th 、26th、 27th 、28th 、29th、 30th 、31st。
扩展资料:
日期用序数词表示,书写时序数词前的the和词尾(-st,-nd,-rd,-th)可省略,但读时要念出来。
表示某年某月某日,按月份日期的序数词年份写出,年份前常用逗号。如:1993年9月2日写作:September 2(nd), 1993
四位数的年份,一般前两个数为一个单位,后两个数为一个单位,依次按基数词读出。三位数的年份,可以按基数词读出,或者第一个数字为一个单位,后两个数字为一个单位,按基数词读出。
求一道JAVA题的解答
哥们我给你写完了,耽误了我半个小时的时间啊!你直接运行就可以了
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Calendar;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class Constellation implements ActionListener{
private JFrame frame = null;
private JTextField year = null;
private JTextField month = null;
private JTextField day = null;
private JLabel label1 = null;
private JLabel label2 = null;
private JLabel label3 = null;
private JPanel panel1 = null;
private JPanel panel2 = null;
private JButton button = null;
private JTextField output = null;
public static final String[] zodiacArr = { "猴", "鸡", "狗", "猪", "鼠", "牛", "虎", "兔", "龙", "蛇",
"马", "羊" };
public static final String[] constellationArr = { "水瓶座", "双鱼座", "牡羊座", "金牛座", "双子座", "巨蟹座",
"狮子座", "处女座", "天秤座", "天蝎座", "射手座", "魔羯座" };
public static final int[] constellationEdgeDay = { 20, 19, 21, 21, 21, 22, 23, 23, 23, 23, 22,
22 };
/**
* * 根据日期获取生肖 *
* @return 11.
*/
public static String date2Zodica(Calendar time) {
return zodiacArr[time.get(Calendar.YEAR) % 12];
}
/**
* * 根据日期获取星座 *
* @param time *
* @return
*/
public static String date2Constellation(Calendar time) {
int month = time.get(Calendar.MONTH);
int day = time.get(Calendar.DAY_OF_MONTH);
if (day < constellationEdgeDay[month]) {
month = month - 1;
}
if (month >= 0) {
return constellationArr[month];
}
// default to return 魔羯
return constellationArr[11];
}
public Constellation(){
frame = new JFrame("计算生肖,星座");
year = new JTextField("",3);
month = new JTextField("",3);
day = new JTextField("",3);
label1 = new JLabel("请输入年份:");
label2 = new JLabel(",请输入月份:");
label3 = new JLabel(",请输入日期:");
button = new JButton("查看结果");
button.addActionListener(this);
panel1 = new JPanel();
panel1.setLayout(new FlowLayout(FlowLayout.CENTER));
panel1.add(label1);
panel1.add(year);
panel1.add(label2);
panel1.add(month);
panel1.add(label3);
panel1.add(day);
panel1.add(button);
frame.setLayout(new BorderLayout());
frame.add(panel1,BorderLayout.NORTH);
panel2 = new JPanel();
output = new JTextField("",40);
panel2.add(output,JPanel.CENTER_ALIGNMENT);
frame.add(panel2,BorderLayout.CENTER);
frame.setSize(500, 100);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
public void actionPerformed(ActionEvent e) {
output.setText("");
int y = Integer.parseInt(year.getText());
int m = Integer.parseInt(month.getText());
int d = Integer.parseInt(day.getText());
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR, y);
calendar.set(Calendar.MONTH, m);
calendar.set(Calendar.DAY_OF_MONTH, d);
String zodica = date2Zodica(calendar);
String constellation = date2Constellation(calendar);
String str = "您输入的日期为:"+y+"年-"+m+"-月"+d+"日,得到的生肖:"+zodica+",星座:"+constellation;
output.setText(str);
}
//testcode
public static void main(String[] args) {
new Constellation();
}
}
JSP如何实现身份证自动生成生肖星座
截取身份证年月日出来对比就可以了。jsp不知你说的是java还是javascript。下面是java
publicclassTest3{publicstaticfinalString[]zodiacArr={"羊","猴","鸡","狗","猪","鼠","牛","虎","兔","龙","蛇","马"};
publicstaticfinalString[]constellationArr={"水瓶座","双鱼座","白羊座","金牛座","双子座","巨蟹座","狮子座","处女座","天秤座","天蝎座","射手座","魔羯座"};
publicstaticfinalint[]constellationEdgeDay={20,19,21,21,21,22,23,23,23,23,22,22};
/**
*根据日期获取生肖
*@return
*/
publicstaticStringgetZodica(Stringcid){
intyear=Integer.parseInt(cid.substring(6,10));
returnzodiacArr[year%12];
}
/**
*根据日期获取星座
*@return
*/
publicstaticStringgetConstellation(Stringcid){
intmonth=Integer.parseInt(cid.substring(10,12));
returnconstellationArr[month-1];
}
publicstaticvoidmain(String[]args){
Stringcid="532128198801253519";
System.out.println(getZodica(cid));
System.out.println(getConstellation(cid));
}
}
怎样用c语言编写以年月日的格式输入一个人的生日和当前日期,来计算这个人的年龄
#include<stadio.h>
main()
{ int year,year1,month,month1,day,day1,age;
printf("请输入您的生日:");
scanf("%d %d %d",&year,&month,&day);
printf("请输入当前日期:");
scanf("%d %d %d",&year1,&month1,&day1);
if(year1==year)
age=0;
else
{age=year1-year;
if(month1<month||(month1==month&&day1<day))
age=age-1;
}
printf("您的年龄是:%d",age);
}
大概就是这个样子,我没有调试,可能有错误,但应该都是小问题,你自己调试一下,觉得哪儿不妥,可以自己改动。