实现将年份转换为天干地支纪年
文章没有文字说明,代码注释都写的非常清楚了,谢谢观看
/**
* 计算天干:(年份-3)% 10 等于 对应天干的序号(1开始计数)
* 计算地支:(年份-3)% 12 等于 对应地支的序号(1开始计数)
* 二者组合成 天干地支对应的纪年
* @param year 键盘录入用于转换的年份
* @return 返回转换后天干地支组合的结果
*/
private static String yearToChineseEra(int year) {
// 天干数组String类型
String[] heavenlyStems = {"甲", "乙", "丙", "丁", "戊", "已", "庚", "辛", "壬", "癸"};
// 地支数组String类型
String[] earthBranchs = {"子", "丑", "寅", "卯", "辰", "巳", "午", "未", "申", "酉", "戌", "亥"};
// 首先判断输入的年份是否为正确值
if(year <= 0) { // 如果不是,则抛出异常
throw new RuntimeException("年份有误");
}
// 定义变量,表示纪念的结果
String chineseEra = "";
// 计算天干
chineseEra += heavenlyStems[(year-3) % 10 - 1];
// 计算地支
chineseEra += earthBranchs[(year-3) % 12 -1];
// 返回结果
return chineseEra;
}
// 运行结果
// 请输入您要转换的年份:1999
// 1999年 对应的天干地支纪年为 已卯 年