📄 ch6_e6_11.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 + -