【发布时间】:2017-01-24 07:34:58
【问题描述】:
我的代码做了一些运算来将二进制输入转换为十进制输出。我还创建了一个扩展 NumberFormatException 的异常类,以在输入不是 1 或 0 时抛出错误。我想要的是将异常抛出到 JTextField。
private void biTodeciActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
String binary;
binary = binaryStringText.getText();
int total = 0;
for(int i = 0; i < binary.length(); i++)
{
if (binary.charAt(i) != '0' && binary.charAt(i) != '1')
{
throw new ParseMethods.BinaryNumberFormatException(binary.charAt(i)+" is not"
+" a valid binary input.");
}
else if(binary.charAt(i) == '1'){
total += Math.pow(2, (binary.length()-1)-i );
}
}
deciOut.setText(""+total);
}
【问题讨论】:
-
您不能
throw未定义方法的异常。所以你有点坚持下去。在你的情况下,我只需调用文本字段的setText,传递你想要的信息(假设你想在字段中显示异常)或更实际地,使用JOptionPane来显示错误消息