演算法題:阿拉伯數字轉化為中文讀法
給出一個五位阿拉伯數字,請寫出它的中文讀法,如:
12345 —> 一萬兩千三百四十五
10000 —> 一萬
這個是貓眼面試官去年問我的一道題目,今天終於把坑填上了,開心~
重點在於0的處理,還有繁雜的字元、字串、整數之間的轉化,那些方法要記牢哦~
package algorithm;
import java.util.*;
public class Solution {
static char[] numArr = {'零','一','二','三','四','五','六','七','八','九'};
static String[] unitArr = {"","十","百","千","萬"};
public static String numToChinese(int num) {
char[] newNum = String.valueOf(num).toCharArray();
int len = newNum.length;
StringBuilder res = new StringBuilder();
for(int i=0;i<len;i++) {
int temp = Integer.parseInt(String.valueOf(newNum[i]));
boolean zeroFlag = temp==0 ? true : false;
if(zeroFlag) {
while(i<len-1 && newNum[i+1]=='0')
i++;
if(i!=len-1) {
res.append(numArr[0]);
}
}else {
res.append(numArr[temp]);
res.append(unitArr[len-i-1]);
}
}
return res.toString();
}
public static void main(String[] args) {
System.out.print(numToChinese(12345));
System.out.print("\n");
System.out.print(numToChinese(10000));
System.out.print("\n");
System.out.print(numToChinese(10001));
System.out.print("\n");
System.out.print(numToChinese(10100));
System.out.print("\n");
System.out.print(numToChinese(10101));
System.out.print("\n");
System.out.print(numToChinese(20890));
}
}
相關文章
- Python將阿拉伯數字轉化為中文大寫Python
- 中文數字阿拉伯數字相互轉換
- python將中文數字轉化成阿拉伯數字Python
- PHP 阿拉伯數字和中文數字的相互轉換PHP
- 一種中文數字轉阿拉伯數字的解決方案
- 阿拉伯-漢字-數字轉換
- 演算法數字轉化為字串演算法字串
- 中文數字與阿拉伯數字:數字符號的文化交融符號
- 羅馬數字轉換阿拉伯數字(Java版,考慮較為全面)Java
- 使用C#實現阿拉伯數字到大寫中文的轉換 (轉)C#
- 阿拉伯與羅馬數字互轉程式
- 用Python實現阿拉伯數字轉換成中國漢字Python
- 阿拉伯數字金額轉漢語金額- Swift版本Swift
- 數字轉中文 pythonPython
- 數字轉換為中文大寫例項程式碼
- 阿拉伯數字轉換成金額大寫金額(包括小數)
- 【數字化】智慧企業架構框架:為企業數字化轉型“奠基”架構框架
- 【數字化】傳統企業數字創新難題;數字化轉型與平臺戰略
- 數字化轉型做到深處皆為坑
- 什麼是數字化轉型,如何理解數字化轉型?
- 將字串轉為數字字串
- 【數字化】IDC首席分析師:這才是數字化轉型的本質!| 重磅必讀
- 再見數字化轉型:對數字化轉型的再思考
- 以製造業為核心的數字化轉型
- jquery金額數字轉為大寫數字jQuery
- Python數字轉換中文大寫Python
- PHP 將數字轉換為漢字PHP
- CATIA是為支援企業實現數字化轉型
- 運維數字化轉型後為什麼更累了運維
- 阿拉伯人用阿拉伯數字嗎?——記一次用String#format格式化字串趟到的雷ORM字串
- 做好中小企業數字化轉型“必答題”——《中小企業數字化水平評測指標》指標
- Facebook 面試題 | 將數字轉換為十六進位制面試題
- 為什麼網路轉型是數字化轉型的基礎?
- 數字化轉型Top5 痛點問題剖析
- 給定數字生成中文數字(MySQL)MySql
- 深度解讀:浪潮KaiwuDB 1.0 – 開啟數字化轉型新思路AI
- 字串轉數字的問題字串
- 每天一道演算法題系列十三之羅馬數字轉整數演算法