[英]How do I compare an input double value in an array to be null/String value("")?
我有一个项目,我在 Swing 中的 Java 程序使用一个双数组来接受来自用户的值并打印项目的总数,有点像订单。 假设用户在文本框中未输入任何值,这将显示错误并阻止进一步计算。 我的问题是,我应该编写什么代码才能让计算机理解文本框中没有输入任何内容,因此只需将值设为 0。我想通过将双数组值比较/转换为字符串来实现此目的然后继续计算。
这是我的代码:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
double price[]=new double[]{0.25,8.55,0.50,0.25};
double amount[]=new double[4];
double quantity[]=new double[4];
quantity[0]=Double.parseDouble(jTextField1.getText());
quantity[1]=Double.parseDouble(jTextField2.getText());
quantity[2]=Double.parseDouble(jTextField3.getText());
quantity[3]=Double.parseDouble(jTextField4.getText());
for(int i=0;i<4;i++) // I want to use a for-loop or if-statement to
check if there is a value entered or not
{
if()
{
quantity[i] //no clue what to do here.
}
}
for(int i=0;i<4;i++)
{
{
amount[i]=quantity[i]*price[i];
}
}
jTextField5.setText(String.valueOf(amount[0]));
jTextField6.setText(String.valueOf(amount[1]));
jTextField7.setText(String.valueOf(amount[2]));
jTextField8.setText(String.valueOf(amount[3]));
首先,您需要在解析文本字段之前检查它们是否为空或字符串值。 您可能需要为所有领域都这样做。
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// check the values of the text fields including an or condition for regular expressions
if (jTextField1.isEmpty() || jTextField1.getText().matches("\\d+.?\\d*") {
// you can use something like a modal to alert
JOptionPane.showMessage(null,"Must enter a decimal value");
} else {
// do something with jTextField1
}
}
您可以使用
if (!jTextField1.getText().isEmpty())
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.