当时这道题没解答出来,现在刚学到查表法,也是现学现用。之后我就做了起来,但是还是有点问题,代码:
package com.ittheima;
import java.util.*;
public class Calendar {
public static void main(String args[]) throws Exception{
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个数字:");
int number = scanner.nextInt();
String shu[]= {"零","一","二","三","四","五","六","七","八","九"};
String str=String.valueOf(number);
//把输入的数字转化为字符串
for(int i=0;i<str.length();i++)
{
int index=str.charAt(i);
sop(shu[index]);
} public static void sop(Object obj)
{
System.out.print(obj);
}
}
package com.ittheima;
import java.util.*;
public class Calendar {
public static void main(String args[]) throws Exception{
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个数字:");
int number = scanner.nextInt();
String shu[]= {"零","一","二","三","四","五","六","七","八","九"};
String str=String.valueOf(number);
//把输入的数字转化为字符串
for(int i=0;i<str.length();i++)
{
int index=str.charAt(i);
sop(shu[index]);
} public static void sop(Object obj)
{
System.out.print(obj);
}
}
这好像看起来没什么问题啊 可是一运行,根本就不是一回事啊,打印出来的是asc表中对应的数字,之前也不知道 ,研究了半天还是弄不出来,没办法 只能问别人了,
嗯 这回有那么点像了,修改后的代码
package com.ittheima;
import java.util.*;
public class Calendar {
public static void main(String args[]) throws Exception{
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个数字:");
//int number = scanner.nextInt();
String shu[]= {"零","一","二","三","四","五","六","七","八","九"};
//String str=String.valueOf(number);
String str = scanner.nextLine();
try{
int number = Integer.parseInt(str);
//把输入的数字转化为字符串
for(int i=0;i<str.length();i++)
{
//查表法
char index=str.charAt(i);
sop(shu[index-'0']);
}
}catch(Exception e){
System.out.println(str);
}
}
public static void sop(Object obj)
{
System.out.print(obj);
}
}
嗯 这样一来就可以输出汉字了,几经波折 还是没有很好的解决。所以,1、我的基础很是不好 简单的知识都没记住(index-'0')
2、学习的时候要认真 多举一反三
3、多做练习 多动手 孰能生巧啊