java 0-999 阿拉伯数字转英文
转载:
https://zhidao.baidu.com/question/1639137131379824180.html
import java.util.Scanner;public class EnglishNumberFormatter {private static final String[] BITS = {"ONE", "TWO", "THREE", "FOUR", "FIVE","SIX", "SEVEN", "EIGHT,", "NINE", "TEN"};private static final String[] TEENS = {"ELEVEN", "TWELF", "THIRTEEN","FOURTEEN", "FIFTEEN", "SIXTEEN", "SEVETEEN", "EIGHTEEN", "NIGHTEEN"};private static final String[] TIES = {"TWENTY", "THRITY", "FORTY", "FIFTY","SIXTY", "SEVENTY", "EIGHTY", "NINETY"};private static Scanner sc;public static void main(String[] args) {sc = new Scanner(System.in);int num = 0;while(num != -1) {System.out.print("Please type a number between 0 and 999: ");num = sc.nextInt();if(num <0 || num > 999) {continue;}String english = toEnglish(num);System.out.println(english);}System.out.println("Thank you for using this program");}public static String toEnglish(int num) {if(num == 0) {return "Zero";}StringBuffer buffer = new StringBuffer();if(num >= 100) {buffer.append(pickHunder(num));if(num % 100 != 0) {buffer.append(" AND ");}num -= (num/100)*100;}boolean largerThan20 = false;if(num >= 20) {largerThan20 = true;buffer.append(pickTies(num));num -= (num / 10) * 10;}if(!largerThan20 && num > 10) {buffer.append(pickTeens(num));num = 0;}if(num > 0) {String bit = pickBits(num);if(largerThan20) {buffer.append(" ");}buffer.append(bit);}return buffer.toString();}private static String pickHunder(int num) {int hunder = num / 100;return BITS[hunder - 1] + " HUNDER";}private static String pickTies(int num) {int ties = num / 10;return TIES[ties - 2];}private static String pickTeens(int num) {return TEENS[num - 11];}private static String pickBits(int num) {return BITS[num - 1];}
}
java 0-999 阿拉伯数字转英文相关推荐
- 阿拉伯数字转换英文数字表示算法解析及其实现
1.阿拉伯数字转换英文数字表示算法解析 例如: 1,111,111,111,111,111.00 1千1百1十1兆1千1百1十1亿1千1百1十1万1千1百1十1 分整数部分处理和小 ...
- c语言阿拉伯数字转换英文数字
对于有三种或更多的结构,C语言除了用多分支选择结构else if之外,C语言还提供了switch的结构. switch语句的执行过程为:首先计算表达式的值,然后依次与常量表达式依次进行比较,若表达式的 ...
- java实现1-99数字的英文转换
java实现1-99数字的英文转换 import java.util.Scanner; public class Practice_1 {public static void main(String[ ...
- Java计算字符串中的英文字母的个数
Java计算字符串中的英文字母的个数 方式一 为如果该字符串中只有数字和字母可以用!Character.isDigit()的方式计算字母个数 方式二为不管是什么样的字符串直接用Character.is ...
- java 将中文字符转为英文,java 将中文字符号转为英文
java 将中文字符转为英文,java 将中文字符号转为英文 package test;import java.io.UnsupportedEncodingException;public class ...
- java基础入门传智播客 源码_Java-_2020年版Java零基础视频教程(Java 0基础,Java初学入门)魔鬼讲师老杜出品...
不会闲聊!!!不会扯淡!!!小UP只会分享与Java相关的学习资源 还记得那年带你Java入门的一声"吼"吗? B站目前播放量已经快到450多万播放量的Java零基础教程的创作者& ...
- 横竖三个数的和相等_怎样证明 0.999… = 1?数值上是相等的,那么两者的区别是什么?...
用戴德金分割很容易定义实数集上的全序性质,这也是大家喜欢用戴德金分割的原因.用柯西序列构造实数,四则运算很容易定义,不过要用到(ε, δ)语言.但是定义实数集的全序性质并不自然,当然你可以选取由有理数 ...
- MessagePack Java 0.6.X List, Map 对象的序列化和反序列化
为了序列化原生的容器对象例如 List 和 Map 对象,你必须使用 Template. Template 对象是 serializer 和 deserializer 的配对.例如,为了序列化一个 ...
- 最让人纠结的等式:0.999...=1
导读:0.999... = 1 吗? 此问题在国内外大大小小的网络社区里出现了无数多次,每次都能引来上百人激烈的争论,可谓是最经久不衰的老问题了.其实,在学术界里,这个问题也是出了名的争论热点.让我们 ...
- RTK计算参数为什么比例必须是0.999或1.000?
有小伙伴在后台留言: 1.RTK计算参数,比例是0.999-可不可以使用? 2.RTK计算参数,比例尺是0.618-可不可以使用? 3.RTK计算参数,比例因子是1.321.-可不可以使用? 根据经验 ...
最新文章
- linux下访问windows的共享
- TP5 实现微信支付和支付宝支付
- hibernate lazy加载
- Hive的union和join操作
- 《系统集成项目管理工程师》必背100个知识点-60干系人管理
- .Net Validator验证框架 [ .Net | Validator Framework | Attribute ]
- 字节流写数据加异常处理
- 自己写的TimeHelper javal时间工具
- jQuery实现鼠标划过展示大图的方法
- 决策树 算法原理及代码
- mesos_Linux Foundation提供了新的认证,Mesos进入了Google等等
- SSH三大框架的概述
- c 语言 字符串 遍历,在C ++中使用字符串的一个遍历的第一个非重复字符
- 会声会影编辑html,网页视频制作使用会声会影剪辑
- 三消游戏核心逻辑的一种实现
- 习惯三:要事第一--自我管理的原则
- redis实现共同好友功能
- 如何解决IT公司代码混乱的问题
- java 屏幕识别_Java课程设计:捕获图片以及识别图中的文字
- 手机网络邻居访问电脑_一起来看看手机如何访问电脑局域网共享的文件夹
热门文章
- 2021-11-09 PMIC RK817 处理POWER键流程linux 部分的简单分析,dts 中会用 interrupt-parent interrupts去处理按键的中断。
- nc 监听数据_linux包之nc之nc命令
- 为什么说EBC是提升企业“数治”水平的最优解
- 伤害世界服务器修改,伤害世界获取GM权限修改方法讲解
- jquery与ajax实现增删改查
- c++20中的span
- Android 模拟器的本地ip
- fetion-robot是基于web飞信接口的飞信机器人
- 七月的尾巴,我不是狮子座
- 引脚复用和引脚重映射