创建一个搜索按钮(双人间不能转换成字符串)近日

创建一个搜索按钮(双人间不能转换成字符串)近日

问题描述:

private void searchProduct() 
{ 
try { 
    Product p = new Product(); 
    //Read data 
    p.setId(Double.parseDouble(textID.getText())); 

    //Display data 
    textDescription.setText(String.valueOf(p.getDescription())); 
    textPrice.setText(String.valueOf(p.getUnitPrice())); 
    textUOM.setText(String.valueOf(p.getUnitOfMeasurement())); 
} 
catch(NumberFormatException e) 
{ 
JOptionPane.showMessageDialog(this.frame, "ID must be number", "Error",JOptionPane.ERROR_MESSAGE); 
} 
} 

你好,我试图把一个按钮,“搜索”找到比等于ID的产品,但我不知道如何解析ID比来从产品类别来看,我有一个错误。创建一个搜索按钮(双人间不能转换成字符串)近日

+0

另外考虑使用支持处理数字的'JFormattedTextField' – MadProgrammer

textID.getText()实际上是一个可解析的双字符串吗?例如“10.1”只是“10.1”没有。

总是我没有这种转换我用trim()删除这个多余的空格如下:

String stringValue = textID.getText(); 
if(stringValue != null) { 
    stringValue = stringValue.trim(); 
} 
double doubleValue = Double.parseDouble(stringValue); 

硒这里http://docs.oracle.com/javase/8/docs/api/java/lang/Double.html#valueOf-java.lang.String-如何避免NumberFormatException的使用正则表达式之前的文本进行字符串尝试将其转换加倍。

+0

在JTextField的情况下(实际上几乎所有基于Document的文本组件)都不会返回null, Java 1.4或约有 – MadProgrammer

+0

和textID是类型... ??? – Doleron

+0

公平点..... – MadProgrammer