下面是一个Applet程序,其功能是统计输入字符串中的每个字符在该串中出现的次数。要求,窗口中有一个文本框作为输入,一个按钮,点击则进行统计,统计结果以图形方式输出。请改正程序中的错误(有下画线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 import java.awt.*; import java.applet.*; import java.1ang*; public class exl3_3 extends Applet{ private TextField tf; private Button btn; public void init(){tf=new TextField(25); add(tf); btn=new Bunon("统计"); add(btn); resize(250,200); } pubhc void paint(Graphics g){ Stling str=tf.genText(); shon cnt[]=new shon[65536]; int i; int n = 50; for(i=0;i<65536;i++)cat[i]=0; for(i=0;i<str.length();i++)cnt[i]++; for(i=0;i<65536;i++)//对数组Cnt[]进行初始化if(cnt[i]>=0){ g.drawString(i+"出现"+cnt[i]+"次",50,n); n+=20; } } public boolean action(Eyent e,Object o){ if(o=="统计"){ repaint(); return true; } else return false; } } ex13_3.html <HTML> <HEAD> <TITLE>ex13_3</TITLE> </HEAD> <BODY> <applet code="ex13_3.class"width=800 height=400> </applet> </BODY> </HTML>
参考答案:
解析:cnt[str.charAt(i)]++ cnt[i]>0g.drawString((char)i+"出现"+cnt[i]+"次",50,n)