

public static String CastToChineseNumber(String num) {
String CNum = num;// 設置將要返回的數字等於輸入的數字
if (CheckNum(CNum)) {
switch (num.length()) {
case 0:// 如果沒有輸入數字
CNum = "N/A"; // 未知
break;
case 1:// 如果是1位的數字
CNum = GetCNum(num);
break;
case 2:// 2位的數字
if (num.substring(1).equals("0"))// 處理 10,20,30

{
if (num.substring(0, 1).equals("1")) {
CNum = "十";
} else {
CNum = GetCNum(num.substring(0, 1)) + "十";
}
} else if (num.substring(0, 1).equals("1"))// 處理11轉換為 十一 而不是一十一
{
CNum = "十" + GetCNum(num.substring(1));
} else {
CNum = GetCNum(num.substring(0, 1)) + "十"
+ GetCNum(num.substring(1));
}
break;
case 3:// 如果是3位的數字
CNum = GetCNum(num.substring(0, 1)) + "百"
+ GetCNum(num.substring(1, 2)) + "十"
+ GetCNum(num.substring(2));
break;
default:
break;
}
}
return CNum;
}
public static boolean CheckNum(String num) {
List<String> al = new ArrayList<String>();
String[] ss = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" };
al = Arrays.asList(ss);
// String Num = "0123456789";
char[] nums = num.toCharArray();
boolean isNum = false;
for (char n : nums) {
if (al.contains(String.valueOf(n))) {
isNum = true;
} else {
isNum = false;
break;
}
}
return isNum;
}
/**
* 獲取數字對應的漢字
*
* @param num
* 輸入的數字
* @return 返回的數字
*/
public static String GetCNum(String num) {
String Cnum = "";
switch (Integer.parseInt(num)) {
case 0:
Cnum = "零";
break;
case 1:
Cnum = "一";
break;
case 2:
Cnum = "二";
break;
case 3:
Cnum = "三";
break;
case 4:
Cnum = "四";
break;
case 5:
Cnum = "五";
break;
case 6:
Cnum = "六";
break;
case 7:
Cnum = "七";
break;
case 8:
Cnum = "八";
break;
case 9:
Cnum = "九";
break;
}
return Cnum;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库