$show=/label

Java Program to Check if a String is Numeric or string contains at least one digit

SHARE:

In this post, We will explore different ways to determine whether a String is numeric or not. Java Program to Check if a String is Numeric in ways.

Check If a String Is Numeric in Java

In this program, you will learn different techniques to check if a string is numeric or not in Java. Check if a String contains numbers Java.

Recommend is to isDigit() method gives the best results. while using a regular expression you may see performance issues because the first parser has to be compiled and executed.

Java Program to Check if a String is Numeric

Example 1: Check if a string is numeric

package examples.java.w3schools.string;

public class StringIsNumeric {

 public static void main(String[] args) {
  String string = "7890.123";
  boolean isNumeric = true;

  try {
   Double num = Double.parseDouble(string);
  } catch (NumberFormatException e) {
   isNumeric = false;
  }

  if (isNumeric) {
   System.out.println(string + " is a number");
  } else {
   System.out.println(string + " is not a number");
  }
 }
}

Here taking input string = "7890.123" and variable isNumeric is a boolean which stores the true if the string contains only digits in it.
We will pass the input string to parseDouble method in Double class. This method parses the string and converts into double.

Output:

This program compiles and runs successfully. Produces the following output.

7890.123 is a number

Example 2: If String has alphabetic what will happen to the parser

public class StringIsNumeric {

 public static void main(String[] args) {
  String string = "12abc";

  try {
   Double num = Double.parseDouble(string);
  } catch (NumberFormatException e) {
   e.printStackTrace();
  }
 }
}

In the above program, the input string is 12abc which has alphabets in it. parseDouble method can not parse alphabets. We will see now what will be the output.

Output:

java.lang.NumberFormatException: For input string: "12abc"

 at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
 at sun.misc.FloatingDecimal.parseDouble(Unknown Source)
 at java.lang.Double.parseDouble(Unknown Source)
 at examples.java.w3schools.string.StringIsNumeric.main(StringIsNumeric.java:10)

Example 3: Check if a string is numeric or not using the isDigit method.

In the below program, We will use the isDigit method from Character class which is a static method. First, we convert the input string to char array and iterate char array using enhanced for loop. In this loop, we will take one by one character and pass the char value to the isDigit method. isDigit method returns true if char is a digit, Otherwise returns false. See the logic which is implemented in the below program.


package examples.java.w3schools.string;

public class StringIsNumeric {

 public static void main(String[] args) {
  boolean containsDigit = false;
  String input = "12abc45";
  if (input != null && !input.isEmpty()) {
   for (char c : input.toCharArray()) {
    containsDigit = Character.isDigit(c);
    if (!containsDigit) {
     break;
    }
   }
  }

  if (containsDigit) {
   System.out.println(input + " is a Number");
  } else {
   System.out.println(input + " is not a Number");
  }
 }
}

Output:

This program runs and produces the following output.

12abc45 is not a Number

Example 4: Check if a string is numeric or not using regular expressions (regex)

Now let’s use regex -?\d+(\.\d+)? to match numeric Strings consisting of the positive or negative integer and floats.

But this goes without saying, that we can definitely modify this regex to identify and cope up with a wide range of rules. Here, we’ll keep it simple.

Let’s break down this regex and see how it works:

  • -? – this part identifies if the given number is negative, the dash “–” searches for dash literally and the question mark “?” marks its presence as an optional one
  • \d+ – this searches for one or more digits
  • (\.\d+)? – this part of regex is to identify float numbers. Here we’re searching for one or more digits followed by a period. The question mark, in the end, signifies that this complete group is optional.

For now, let’s create a method using the above regular expression:

public static boolean isNumeric(String strNum) {
    return strNum.matches("-?\\d+(\\.\\d+)?");
}

This method returns true if the srtNum has only digits in it otherwise returns false.

strNum = 10000 --> returns true
strNum = hello123 --> returns false.

COMMENTS

BLOGGER

About Us

Author: Venkatesh - I love to learn and share the technical stuff.
Name

accumulo,1,ActiveMQ,2,Adsense,1,API,31,ArrayList,16,Arrays,2,Bean Creation,3,Bean Scopes,1,BiConsumer,1,Blogger Tips,1,Books,1,C Programming,1,Collection,4,Collections,20,Collector,1,Command Line,1,Compile Errors,1,Configurations,7,Constants,1,Control Statements,8,Conversions,5,Core Java,73,Corona India,1,Create,2,CSS,1,Date,2,Date Time API,3,Dictionary,1,Difference,1,Download,1,Eclipse,2,Efficiently,1,Error,1,Errors,1,Exception,1,Exceptions,3,Fast,1,Files,9,Float,1,Font,1,For examples,1,For loop examples,1,For Loop in Java,1,Form,1,Freshers,1,Function,3,Functional Interface,2,Garbage Collector,1,Generics,4,Git,4,Grant,1,Grep,1,HashMap,1,HomeBrew,2,HTML,2,HttpClient,2,Immutable,1,Inner for loops,1,Installation,1,Interview Questions,5,Iterate,2,Jackson API,3,Java,28,Java 10,1,Java 11,5,Java 12,5,Java 13,2,Java 14,2,java 5 For loop,1,Java 8,48,Java 9,1,Java Design Patterns,1,Java Files,1,Java for loop,1,Java Program,2,Java Programs,65,java.lang,5,java.util. function,1,jQuery,1,Kotlin,10,Kotlin Programs,6,Lambda,1,lang,29,Leap Year,1,live updates,1,Mac OS,2,Math,1,Maven,1,Method References,1,Mockito,1,MongoDB,3,Nested for loop,1,Nested for loop examples,1,New Features,1,Operations,1,Optional,4,Oracle,5,Oracle 18C,1,Partition,1,Patterns,1,Programs,1,Property,1,Python,2,Quarkus,1,Read,1,Real Time,1,Recursion,2,Remove,2,Rest API,1,Schedules,1,Serialization,1,Servlet,1,Sorting Techniques,8,Spring,2,Spring Boot,23,Spring Email,1,Spring MVC,1,Stream,3,Streams,11,String,48,String Programs,8,String Revese,1,Swing,1,System,1,Tags,1,Threads,8,Tomcat,1,Tomcat 8,1,Troubleshoot,16,Unix,2,Updates,3,util,5,While Loop,1,
ltr
item
JavaProgramTo.com: Java Program to Check if a String is Numeric or string contains at least one digit
Java Program to Check if a String is Numeric or string contains at least one digit
In this post, We will explore different ways to determine whether a String is numeric or not. Java Program to Check if a String is Numeric in ways.
https://2.bp.blogspot.com/-20si6Vzu_Co/XLnuK3AG5gI/AAAAAAAABY8/WZ8JCMozrhEFGClZTh_jyB3P1H7l49KAgCLcBGAs/s640/Check%2Bif%2Ba%2BString%2Bis%2BNumeric.PNG
https://2.bp.blogspot.com/-20si6Vzu_Co/XLnuK3AG5gI/AAAAAAAABY8/WZ8JCMozrhEFGClZTh_jyB3P1H7l49KAgCLcBGAs/s72-c/Check%2Bif%2Ba%2BString%2Bis%2BNumeric.PNG
JavaProgramTo.com
https://www.javaprogramto.com/2019/04/java-check-string-number.html
https://www.javaprogramto.com/
https://www.javaprogramto.com/
https://www.javaprogramto.com/2019/04/java-check-string-number.html
true
3124782013468838591
UTF-8
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share to a social network STEP 2: Click the link on your social network Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy Table of Content