Back to Blog
Developer guide
JAVAMay 21, 2026

Java NumberFormatException Common Causes and Fixes for Developers

Java NumberFormatException is a common error that can occur when working with numeric data in Java. This error occurs when the Java Virtual Machine (JVM) is unable to parse a string or value into a numeric format, such as an integer or floating-point number. In this article, we'll explore the common causes of Java NumberFormatException and provide practical solutions to help you resolve these issues and get back on track with your Java development.

1. Error parsing an integer literal

This error occurs when the JVM encounters a string that cannot be parsed into an integer.

Why It Happens

The error occurs when the JVM encounters a string that contains non-numeric characters, such as a string with a comma or decimal point, or a string that is too large to be represented as an integer.

How to Fix It

To fix this error, ensure that the string being parsed is a valid integer literal. Remove any non-numeric characters, and use the Integer.parseInt() method to parse the string into an integer. For example, you can use the trim() method to remove any leading or trailing whitespace, and then use a regular expression to remove any non-numeric characters.


2. Error parsing a floating-point number

This error occurs when the JVM encounters a string that cannot be parsed into a floating-point number.

Why It Happens

The error occurs when the JVM encounters a string that contains non-numeric characters, such as a string with a non-numeric exponent, or a string that is too large or too small to be represented as a floating-point number.

How to Fix It

To fix this error, ensure that the string being parsed is a valid floating-point number literal. Remove any non-numeric characters, and use the Float.parseFloat() or Double.parseDouble() method to parse the string into a floating-point number. For example, you can use the trim() method to remove any leading or trailing whitespace, and then use a regular expression to remove any non-numeric characters.


3. Error parsing a hexadecimal number

This error occurs when the JVM encounters a string that cannot be parsed into a hexadecimal number.

Why It Happens

The error occurs when the JVM encounters a string that contains non-hexadecimal characters, such as a string with a non-hexadecimal digit, or a string that is too large or too small to be represented as a hexadecimal number.

How to Fix It

To fix this error, ensure that the string being parsed is a valid hexadecimal number literal. Remove any non-hexadecimal characters, and use the Integer.parseInt() method with the radix 16 to parse the string into a hexadecimal number. For example, you can use the trim() method to remove any leading or trailing whitespace, and then use a regular expression to remove any non-hexadecimal characters.


4. Error converting a string to a numeric type

This error occurs when the JVM encounters a string that cannot be converted to a numeric type, such as an Integer or Float.

Why It Happens

The error occurs when the JVM encounters a string that contains non-numeric characters, such as a string with a comma or decimal point, or a string that is too large or too small to be represented as a numeric type.

How to Fix It

To fix this error, ensure that the string being converted is a valid numeric type literal. Remove any non-numeric characters, and use the Integer.parseInt() or Float.parseFloat() method to convert the string to a numeric type. For example, you can use the trim() method to remove any leading or trailing whitespace, and then use a regular expression to remove any non-numeric characters.


5. Error parsing a number with a scientific notation

This error occurs when the JVM encounters a string that contains a scientific notation, such as 1.23E-4.

Why It Happens

The error occurs when the JVM encounters a string that contains a scientific notation, and the JVM is not configured to parse scientific notation.

How to Fix It

To fix this error, ensure that the JVM is configured to parse scientific notation. You can do this by setting the system property java.util.Arrays.useLegacyMergeSort=true, or by using the Double.parseDouble() method with the scientific notation string. For example, you can use the trim() method to remove any leading or trailing whitespace, and then use a regular expression to remove any non-scientific notation characters.

Conclusion

Java NumberFormatException is a common error that can occur when working with numeric data in Java. By understanding the common causes of this error and following the step-by-step solutions provided in this article, you can resolve these issues and get back on track with your Java development.

Explore More Debugging Resources

- [Browse all JAVA errors](/languages/java)

- [Browse errors by type](/error-types)

- [Search all documented errors](/search)

- [Use the Error Explainer](/error-explainer-tool)

Browse allJava errors

Related JAVA Articles

Have a specific error? Get an instant explanation.

Explain an Error