Java小白入门200例51之根据出生日期计算星座
Posted 编程界明世隐
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java小白入门200例51之根据出生日期计算星座相关的知识,希望对你有一定的参考价值。
作者简介
作者名:编程界明世隐
简介:CSDN博客专家,从事软件开发多年,精通Java、javascript,博主也是从零开始一步步把学习成长、深知学习和积累的重要性,喜欢跟广大ADC一起打野升级,欢迎您关注,期待与您一起学习、成长、起飞!
引言
很多Java初学者问我,新手明明很用心、很努力学习的Java知识,转头又忘记了,很让人犯愁,小白如何能够快速成长、成为大牛呢?
其实要成为大神的技巧只有一个:“多学多练”,于是明哥就整理了比较典型的练习实例,通过练习能够快速提升编码技巧和熟练度,让你在成为大佬的路上一去不复返(切记要亲手练习哦)!
导航
✪ Java小白入门200例系列目录索引
◄上一篇 50.Java判断闰年并打印月份对应的天数
►下一篇 52.实现淡旺季飞机票打折
星座划分
星座 | 出生日期 |
---|---|
水瓶 | 0121~0219 |
双鱼 | 0220~0320 |
白羊 | 0321~0420 |
金牛 | 0421~0521 |
双子 | 0522~0621 |
巨蟹 | 0622~0722 |
狮子 | 0723~0823 |
处女 | 0824~0923 |
天秤 | 0924~1023 |
天蝎 | 1024~1122 |
射手 | 1123~1221 |
摩羯 | 1222~0120 |
分析
输入一个 4 位数字,根据这个数字所处的范围进行判断,其中前两位是月份,后两位是日期。这里分别用 if else 语句和 switch 语句实现,以便更好的掌握 if else 和 switch 的区别和适用场景。
实现1
用 if else来实现
package demo.demo51;
import java.util.Scanner;
public class XingZuo {
public static void main(String[] args) {
//获取输入内容
int monthday = getInput();
//得到月份
int month = monthday/100;
//得到天
int day = monthday%100;
//得到星座内容
String xingzuo = getXingZuo(month, day);
System.out.println("星座是:"+xingzuo);
}
//得到输入
private static int getInput() {
int res=0;
System.out.println("请输入初始日期(1月1日 则输入0101):");
Scanner scanner = new Scanner(System.in);
try {
res = scanner.nextInt();
} catch (Exception e) {
System.out.println("你输入的格式错误,请重新输入!");
//进行递归操作
res = getInput();
}
return res;
}
private static String getXingZuo(int month,int day) {
String xingzuo="";
if (month == 1) {
if (day < 21) {
xingzuo = "摩羯座";
} else {
xingzuo = "水瓶座";
}
} else if (month == 2) {
if (day < 20) {
xingzuo = "水瓶座";
} else {
xingzuo = "双鱼座";
}
} else if (month == 3) {
if (day < 21) {
xingzuo = "双鱼座";
} else {
xingzuo = "白羊座";
}
} else if (month == 4) {
if (day < 21) {
xingzuo = "白羊座";
} else {
xingzuo = "金牛座";
}
} else if (month == 5) {
if (day < 22) {
xingzuo = "金牛座";
} else {
xingzuo = "双子座";
}
} else if (month == 6) {
if (day < 22) {
xingzuo = "双子座";
} else {
xingzuo = "巨蟹座";
}
} else if (month == 7) {
if (day < 23) {
xingzuo = "巨蟹座";
} else {
xingzuo = "狮子座";
}
} else if (month == 8) {
if (day < 24) {
xingzuo = "狮子座";
} else {
xingzuo = "处女座";
}
} else if (month == 9) {
if (day < 24) {
xingzuo = "处女座";
} else {
xingzuo = "天秤座";
}
} else if (month == 10) {
if (day < 24) {
xingzuo = "天秤座";
} else {
xingzuo = "天蝎座";
}
} else if (month == 11) {
if (day < 23) {
xingzuo = "天蝎座";
} else {
xingzuo = "射手座";
}
} else if (month == 12) {
if (day < 22) {
xingzuo = "射手座";
} else {
xingzuo = "摩羯座";
}
}
return xingzuo;
}
}
运行结果:
请输入初始日期(1月1日 则输入0101):
0123
星座是:水瓶座
实现2
用switch case来处理
package demo.demo51;
import java.util.Scanner;
public class XingZuo2 {
public static void main(String[] args) {
// 获取输入内容
int monthday = getInput();
// 得到月份
int month = monthday / 100;
// 得到天
int day = monthday % 100;
// 得到星座内容
String xingzuo = getXingZuo(month, day);
System.out.println("星座是:" + xingzuo);
}
// 得到输入
private static int getInput() {
int res = 0;
System.out.println("请输入初始日期(1月1日 则输入0101):");
Scanner scanner = new Scanner(System.in);
try {
res = scanner.nextInt();
} catch (Exception e) {
System.out.println("你输入的格式错误,请重新输入!");
// 进行递归操作
res = getInput();
}
return res;
}
private static String getXingZuo(int month, int day) {
String xingzuo = "";
switch (month) {
case 1:
xingzuo = day < 21 ? "摩羯座" : "水瓶座";
break;
case 2:
xingzuo = day < 20 ? "水瓶座" : "双鱼座";
break;
case 3:
xingzuo = day < 21 ? "双鱼座" : "白羊座";
break;
case 4:
xingzuo = day < 21 ? "白羊座" : "金牛座";
break;
case 5:
xingzuo = day < 22 ? "金牛座" : "双子座";
break;
case 6:
xingzuo = day < 22 ? "双子座" : "巨蟹座";
break;
case 7:
xingzuo = day < 23 ? "巨蟹座" : "狮子座";
break;
case 8:
xingzuo = day < 24 ? "狮子座" : "处女座";
break;
case 9:
xingzuo = day < 24 ? "处女座" : "天秤座";
break;
case 10:
xingzuo = day < 24 ? "天秤座" : "天蝎座";
break;
case 11:
xingzuo = day < 23 ? "天蝎座" : "射手座";
break;
case 12:
xingzuo = day < 22 ? "射手座" : "摩羯座";
break;
}
return xingzuo;
}
}
运行结果:
请输入初始日期(1月1日 则输入0101):
0128
星座是:水瓶座
小结
这节总结了“根据出生日期计算星座”,希望能对大家有所帮助,请各位小伙伴帮忙 【点赞】+【收藏】+ 【评论区打卡】, 如果有兴趣跟小明哥一起学习Java的,【关注一波】不迷路哦。
评论区打卡一波让我知道你,明哥会持续关注你的学习进度哦!
导航
✪ Java小白入门200例系列目录索引
◄上一篇 50.Java判断闰年并打印月份对应的天数
►下一篇 52.实现淡旺季飞机票打折
热门专栏推荐
1.Java小游戏系列(俄罗斯方块、飞机大战、植物大战僵尸等)
2.JavaWeb项目实战(图书管理、在线考试、宿舍管理系统等)
3.JavaScript精彩实例(飞机大战、扫雷、贪吃蛇、验证码等)
4.Java小白入门200例
5.从零学Java、趣学Java、以王者荣耀角度学Java
以上是关于Java小白入门200例51之根据出生日期计算星座的主要内容,如果未能解决你的问题,请参考以下文章