int n=fenxi.countToken(); 应该是fenxi.countTokens();

解决方案 »

  1.   

    int n=fenxi.countToken(); 应该是int n=fenxi.countTokens(); 
      

  2.   

    int sum=0,p; 
    应该是int sum=0,p=0;(p要初始化)
      

  3.   

    我明白了,根据你的程序你的sum所得到的并不是输入数的总和
    修改如下:
    import java.util.*; 
    import java.applet.*; 
    import java.awt.*; 
    import java.awt.event.*; 
    public class a extends Applet implements TextListener 
    {TextArea text1,text2; 
    String s;
    public void init() 
    {text1=new TextArea(" ",10,30); 
    text2=new TextArea(" ",10,30); 
    add(text1);add(text2);text2.setEditable(false); 
    text1.addTextListener(this); 

    public void textValueChanged(TextEvent e) 
    {if(e.getSource()==text1) 
    { s=text1.getText(); 
    double a[]=new double[50]; 
    StringTokenizer fenxi=new StringTokenizer(s,", "); 
    int n=fenxi.countTokens(); 
    for(int i=0;i<=n-1;i++) 
    {String temp=fenxi.nextToken(); 
    a[i]=Double.valueOf(temp).doubleValue(); 

    double sum=0.0;
    double p=0; 
    for(int i=0;i<=n-1;i++) 
    {sum=sum+a[i]; 
    p=sum/n; 

    text2.setText("sum= "+sum); 
    text2.setText("p= "+p); 


    }