簡體   English   中英

有關JTextField中已解析整數的條件

[英]Conditions regarding parsed integer from JTextField

在我的程序中,我獲得了JTextField的值並解析成一個整數:

String string = jtext.getText();
int stringval = Integer.parseInt(str);

我的問題是我如何能夠檢查該值是否被解析為整數? 我嘗試了這個,但它沒有保留我希望完成的結果,我收到了錯誤。

if(str == null)
  {
      JOptionPane.showMessageDialog(null, "Integer not parsed", "Message",
      JOptionPane.INFORMATION_MESSAGE);
  }

如果無法將其解析為int,則會拋出異常。

嘗試使用try catch語句

boolean tryParseInt(String value)  
{  
     try  
     {  
         Integer.parseInt(value);  
         return true;  
      } catch(NumberFormatException nfe)  
      {  
          return false;  
      }  
}

你可以像這樣使用它

if(tryParseInt(myInput))
{  
   Integer.parse(myInput); 
}

或者如果你想在沒有方法的情況下這樣做

int stringval;
bool success = true;

try
{
  stringval = Integer.parseInt(str);
}
catch (NumberFormatException nfe)  
{
  success = false;
  JOptionPane.showMessageDialog(null, "Integer not parsed", "Message",
  JOptionPane.INFORMATION_MESSAGE);
}

if (success)
{
  //do whatever
}

希望有所幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM