# BigDecimal longValue() Method in Java

The java.math.BigDecimal.longValue() is an in-built function which converts this BigDecimal to a long value. This function discards any fractional part of this BigDecimal. The function returns only the lower-order 64 bits when the result of the conversion is too big to be represented as a long value.

Syntax:

`public long longValue()`

Parameters: This function accepts no parameters.

Return Value: This function returns the long value of this BigDecimal.

Examples:

```Input : 1987812456121.176
Output : 1987812456121

Input : "721111"
Output : 721111
```

Below programs illustrate the use of java.math.BigDecimal.longValue() method:

Program 1:

 `// Java program to illustrate ` `// longValue() method ` `import` `java.math.*; ` `import` `java.io.*; ` ` `  `class` `GFG { ` `    ``public` `static` `void` `main(String[] args) ` `    ``{ ` `        ``// Creating 2 BigDecimal Objects ` `        ``BigDecimal b1, b2; ` ` `  `        ``// Assigning values to b1, b2 ` `        ``b1 = ``new` `BigDecimal(``"1987812456121.176"``); ` `        ``b2 = ``new` `BigDecimal(``"721111"``); ` ` `  `        ``// Displaying their respective Long Values ` `        ``System.out.println(``"The Long Value of "` `+ b1 + ` `        ``" is "` `+ b1.longValue()); ` `        ``System.out.println(``"The Long Value of "` `+ b2 +  ` `        ``" is "` `+ b2.longValue()); ` `    ``} ` `} `

Output:

```The Long Value of 1987812456121.176 is 1987812456121
The Long Value of 721111 is 721111
```

Note: Information regarding the overall magnitude and precision of large this BigDecimal values might be lost during the course of conversion by this function. As a consequence, a result with the opposite sign might be returned.

Program 2: Below program illustrates a scenario when the function returns a result with the opposite sign.

 `// Java program to illustrate ` `// longValue() method ` `import` `java.math.*; ` `import` `java.io.*; ` ` `  `class` `GFG { ` `    ``public` `static` `void` `main(String[] args) ` `    ``{ ` `        ``// Creating 2 BigDecimal Objects ` `        ``BigDecimal b1, b2; ` ` `  `        ``// Assigning values to b1, b2 ` `        ``b1 = ``new` `BigDecimal(``"267694723232435121868"``); ` `        ``b2 = ``new` `BigDecimal(``"72111184561789104423"``); ` ` `  `        ``// Displaying their respective Long Values ` `        ``System.out.println(``"The Long Value of "` `+ b1 +  ` `        ``" is "` `+ b1.longValue()); ` `        ``System.out.println(``"The Long Value of "` `+ b2 +  ` `        ``" is "` `+ b2.longValue()); ` `    ``} ` `} `

Output:

```The Long Value of 267694723232435121868 is -9006437873208152372
The Long Value of 72111184561789104423 is -1675791733049102041
```

My Personal Notes arrow_drop_up

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

Article Tags :
Practice Tags :

Be the First to upvote.

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.