dividebyzerotest.java

来自「例外处理当除数为0的情况」· Java 代码 · 共 91 行

JAVA
91
字号
import java.text.DecimalFormat;import javax.swing.*;import java.awt.*;import java.awt.event.*;public class DivideByZeroTest extends JFrame implements ActionListener{	private JTextField input1,input2,output;	private int number1,number2;	private double result;		public DivideByZeroTest()	{		super("Demonstrating Exception");				Container c=getContentPane();		c.setLayout(new GridLayout(3,2));				c.add(new JLabel("第一个数",SwingConstants.RIGHT));		input1=new JTextField(10);		c.add(input1);				c.add(new JLabel("第二个数",SwingConstants.RIGHT));		input2=new JTextField(10);		c.add(input2);		input2.addActionListener(this);//第二个文本域注册了ActionListener事件的监听器				c.add(new JLabel("结果",SwingConstants.RIGHT));		output=new JTextField();		c.add(output);				setSize(425,100);		show();	}			public void actionPerformed(ActionEvent e)//对应ActionEvent事件的方法	{		DecimalFormat precision3=new DecimalFormat("0.000");				output.setText("这里可以得到结果哦");				try		{			number1=Integer.parseInt(input1.getText());			number2=Integer.parseInt(input2.getText());						result=quotient(number1,number2);			output.setText(precision3.format(result));		}		catch(NumberFormatException nfe)//捕获数据类型错误		{			JOptionPane.showMessageDialog(this,			"你需要输入正确的数字",			"数字类型错误",			JOptionPane.ERROR_MESSAGE);		}		catch(DivideByZeroException dbze)//捕获自定义除数为零的错误		{			JOptionPane.showMessageDialog(this,			dbze.toString(),"除数为零,请修改",			JOptionPane.ERROR_MESSAGE);		}	}		public double quotient(int numberator,int denominator) throws DivideByZeroException	{		if(denominator==0)		{			throw new DivideByZeroException();		}		return (double) numberator/denominator;	}		public static void main(String[] args)	{		DivideByZeroTest app=new DivideByZeroTest();		//给窗口注册WindowListener事件,用到了一个匿名类进行事件处理		//匿名类里面是实现了一个适配器接口				app.addWindowListener(new WindowAdapter()		                      {		                      	public void windowClosing(WindowEvent e)		                      	{		                      		e.getWindow().dispose();		                      		System.exit(0);		                      	}		                      }		                  );	}}

⌨️ 快捷键说明

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