⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ch6_e6_11.java

📁 《java语言与面向对象程序设计题解及实验指导》源代码
💻 JAVA
字号:
import java.applet.*; 
import java.awt.*;
import java.awt.event.*;

public class ch6_e6_11 extends Applet implements ActionListener
{
    final int ARRAY_LENGTH = 10;
    final String labelPrompt[] = {"最大值:","最小值:",
        "总和:","平均值:"};
    
    int myArray[] = new int[ARRAY_LENGTH];
    int count=0, max=0, min=0, sum=0;
    double avg=0.0;
    
    TextField inputTfd = new TextField(10);
    Label inputLbl = new Label("请输入数据并回车:");
    Label maxLabel = new Label(labelPrompt[0] + "      ");
    Label minLabel = new Label(labelPrompt[1] + "      ");
    Label sumLabel = new Label(labelPrompt[2] + "      ");
    Label avgLabel = new Label(labelPrompt[3] + "      ");
        
    public void init()
    {
        for(int i=0; i<ARRAY_LENGTH; i++)
        {
            myArray[i] = 0;
        }
        
        add(inputLbl);
        add(inputTfd);
        add(maxLabel);
        add(minLabel);
        add(sumLabel);
        add(avgLabel);
        
        inputTfd.addActionListener(this);
    }
    
    public void actionPerformed(ActionEvent ae)
    {
        TextField temp = (TextField)(ae.getSource());
        
        if(temp == inputTfd)
        {
            try
            {
                int value = Integer.parseInt(temp.getText());
                    
                if(count == 0)
                {
                    max = value;
                    min = value;
                    sum = value;
                    avg = value;
                }
                else
                {
                    max = Math.max(value,max);
                    min = Math.min(value,min);
                    sum = (count<ARRAY_LENGTH) 
                        ? sum + value
                        : sum - myArray[count % ARRAY_LENGTH] + value;
                    avg = ((double)(sum)) / (count<ARRAY_LENGTH ? count+1 : ARRAY_LENGTH);
                }
                myArray[count % ARRAY_LENGTH] = value;
                count++;
                maxLabel.setText(labelPrompt[0] + max);
                minLabel.setText(labelPrompt[1] + min);
                sumLabel.setText(labelPrompt[2] + sum);
                avgLabel.setText(labelPrompt[3] + avg);
                inputTfd.setText("");
            }
            catch(NumberFormatException nfe)
            {
                inputTfd.setText("格式错误");
            }
        }
        else
        {
            showStatus("事件" + ae.toString() 
                + "未定义处理操作");
        }
    }
    
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -