Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,907 questions

51,839 answers

573 users

How to check if a given string is a valid BigDecimal in Java

1 Answer

0 votes
import java.math.BigDecimal;

public class MyClass {
    public static void main(String args[]) {
        String s1 = "8217528938039999999999982734590087211199382724324131999999999372732342342928727231421289.348686"; 
        String s2 = "99999999999999999999999289380398273459009393837372827846462323998923842908472984729839199999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999990982374121"; 
        String s3 = "821752893803999999999998273459008721119938272432413e9999999"; 

        // Theoretical there is no limit for BigDecimal. BigDecimal allocates as much memory as it needs
        
        try 
        { 
            new BigDecimal(s1); 
            System.out.println(s1 + " is a valid BigDecimal"); 
        }  
        catch (NumberFormatException e)  
        { 
            System.out.println(s1 + " is not a valid BigDecimal"); 
            System.out.println(e);
        } 
          
        try 
        { 
            new BigDecimal(s2);
            System.out.println(s2 + " is a valid BigDecimal"); 
        }  
        catch (NumberFormatException e) 
        { 
            System.out.println(s2 + " is not a valid BigDecimal");
            System.out.println(e);
        } 
        
        try 
        { 
            new BigDecimal(s3);
            System.out.println(s3 + " is a valid BigDecimal"); 
        }  
        catch (NumberFormatException e) 
        { 
            System.out.println(s3 + " is not a valid BigDecimal");
            System.out.println(e);
        } 
    }
}



/*
run:

8217528938039999999999982734590087211199382724324131999999999372732342342928727231421289.348686 is a valid BigDecimal
99999999999999999999999289380398273459009393837372827846462323998923842908472984729839199999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999990982374121 is a valid BigDecimal
821752893803999999999998273459008721119938272432413e9999999 is a valid BigDecimal

*/

 



answered Aug 20, 2019 by avibootz

Related questions

1 answer 166 views
1 answer 151 views
1 answer 142 views
4 answers 203 views
1 answer 143 views
2 answers 212 views
...