验证输入是否不是数字(数字)
Validate if input is not numeric (number)
我只是一个初学者。我正在尝试验证输入是否为数字而非字符串。我似乎无法得到正确的结果。总是假的。
import javax.swing.JOptionPane;
public class CheckDigit
{
public static void main(String[] args)
{
String containsOnlyNumbers;
containsOnlyNumbers = JOptionPane.showInputDialog("Please enter some numbers: ");
// System.out.println(containsOnlyNumbers("12345"));
// System.out.println(containsOnlyNumbers("12abc345"));
if (false)
{
JOptionPane.showMessageDialog(null, "False!");
}
else
{
JOptionPane.showMessageDialog(null, "True!");
}
}
public static boolean containsOnlyNumbers(String str)
{
for (int i = 0; i < str.length(); i++)
{
if (!Character.isDigit(str.charAt(i)))
return false;
}
return true;
}
}
请指教。 TIA.
如果你想使用你的解决方案,你必须替换
if (false)
和
if (!containsOnlyNumbers(containsOnlyNumbers))
因为您没有调用您的方法(方法和字符串同名)。
你也可以这样试试,
public static boolean numericCheck(String str)
{
try{
double d=Double.parseDouble(str);
}catch(NumberFormatException e)
{
return false;
}
return true;
}
if method return true 则输入是数字,if return false 输入不是数字
我只是一个初学者。我正在尝试验证输入是否为数字而非字符串。我似乎无法得到正确的结果。总是假的。
import javax.swing.JOptionPane;
public class CheckDigit
{
public static void main(String[] args)
{
String containsOnlyNumbers;
containsOnlyNumbers = JOptionPane.showInputDialog("Please enter some numbers: ");
// System.out.println(containsOnlyNumbers("12345"));
// System.out.println(containsOnlyNumbers("12abc345"));
if (false)
{
JOptionPane.showMessageDialog(null, "False!");
}
else
{
JOptionPane.showMessageDialog(null, "True!");
}
}
public static boolean containsOnlyNumbers(String str)
{
for (int i = 0; i < str.length(); i++)
{
if (!Character.isDigit(str.charAt(i)))
return false;
}
return true;
}
}
请指教。 TIA.
如果你想使用你的解决方案,你必须替换
if (false)
和
if (!containsOnlyNumbers(containsOnlyNumbers))
因为您没有调用您的方法(方法和字符串同名)。
你也可以这样试试,
public static boolean numericCheck(String str)
{
try{
double d=Double.parseDouble(str);
}catch(NumberFormatException e)
{
return false;
}
return true;
}
if method return true 则输入是数字,if return false 输入不是数字