用java写一个汉字数字转化成阿拉伯数字的算法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用java写一个汉字数字转化成阿拉伯数字的算法相关的知识,希望对你有一定的参考价值。
我是刚毕业的,他用这个题来面试,我疯了
例如一百五十一转化成151还有就是题目写的"此算法要运行一万次要考虑效率问题"
如果是的话,可以用String类里面的一些方法,将表示个十百千万这样的字找出来,再找到这些字的前一个字,然后乘以对应的1000或100什么的加到一起就行了。具体的自己实现吧,比如先将零到九先转换成0到9,然后用chatAt返回那个个十百千万这样的字,思路就是这样吧,这样好像有点复杂,但是如果你会正则表达式的话会简单许多的。希望能帮到你。 参考技术B public static char fn1(char a)//方法1
switch(a)
case '一':
return '1';
case '二':
return '2';
case '三':
return '3';
case '四':
return '4';
case '五':
return '5';
case '六':
return '6';
case '七':
return '7';
case '八':
return '8';
case '九':
return '1';
case '零':
return '0';
return ' ';
public static char fn2(char a)//方法2
char hanzi[]='零','一','二','三','四','五','六','七','八','九';
char alabo[]='0','1','2','3','4','5','6','7','8','9';
for(int i=0;i<10;i++)
if(a==hanzi[i])
return alabo[i];
return ' ';
public static void main(String[] args)
System.out.println(fn2('一');
本回答被提问者采纳 参考技术C public class test
public static void main(String args[])
int ss = Integer.parseInt(args[0]);
if(ss==0)
System.out.println("零");
else if (ss==1)
System.out.println("壹");
else if (ss==2)
System.out.println("贰");
else if (ss==3)
System.out.println("叁");
else if (ss==4)
System.out.println("肆");
else if (ss==5)
System.out.println("伍");
else if (ss==6)
System.out.println("陆");
else if (ss==7)
System.out.println("柒");
else if (ss==8)
System.out.println("捌");
else if (ss==9)
System.out.println("玖");
else
System.out.println("");
参考技术D public class test public static void main(String args[]) int ss没看明白你的意思,一个阿拉伯数字对应一个汉字??用俩个数组,一个是数字
java中,怎么讲一个double型数字,转化为一个String字符串?
double型数字,转化为一个String字符串double
d
=
1.34;
String
ds
=
String.valueOf(d);
图形界面中,一个文本框中输出数字
先将数字转为字符串,如上,String.valueOf方法是表态方法,可以将long,int
,float,short,double类型的数字转为字符串.
JTextField
text
=
new
JTextField();
text.setText(ds);//注意这里是以字符串为参数的.
如果你直接用数作参数,也可以这样写的:
text.setText("3.23"); 参考技术A 转换成字符串:String
str
=
String.valueOf(123.456);
文本框中输出数字:
如果是TextField就myTextField.setText(123);//会覆盖原来已有的内容
如果是TextArea就myTextArea.append(123);//在已有的内容后面追加上 参考技术B 怎么将一个double型数字,转化为一个String字符串?
String
ds
=
String.valueOf(3.1541);
图形界面中,怎么在一个文本框中输出数字。
文本框有一个构造方法,利用默认的数字初始化文本框,这个数字可以自己指定动态生成:
JTextField
fe
=
new
JTextField(123",20);
还可以这样:
fe.setText("你要填的字符串");
以上是关于用java写一个汉字数字转化成阿拉伯数字的算法的主要内容,如果未能解决你的问题,请参考以下文章