本帖最后由 一顿一只牛 于 2014-8-16 22:20 编辑
package com.itheima;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/*
* 3、 从键盘接受一个数字,列出该数字的中文表示格式,例如:键盘输入123,打印出一二三;键盘输入3103,打印出三一零三。
*
* 1,接收一个键盘录入的数字
* 2,将这个数字装换成中文标示格式输出。
* 定义一个数字转换成中文格式的函数。
*
* */
public class Text3 {
public static void main(String[] args) throws IOException{
System.out.println("请输入一个数字:");
//键盘录入
BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in));
String line = null;
while((line=bufr.readLine())!=null){
if("over".equals(line))
break;
System.out.println(toChinese(bufr.readLine()));
}
bufr.close();
}
//定义一个函数,把数字转换成中文格式。
public static String toChinese(String str) {
String digits = "零一二三四五六七八九";
StringBuilder buf = new StringBuilder(str.length());
for (int i = 0; i < str.length(); ++i) {
buf.append(digits.charAt(str.charAt(i) - '0'));
}
return buf.toString();
}
}
为什么我第一次输入数字的时候总是不能转换,要第二次才行,求大神解惑啊。 |