Método BigDecimal movePointLeft() en Java

requisito previo: Conceptos básicos de BigDecimal

El método java.math.BigDecimal.movePointLeft( int n ) se usa para mover el punto decimal del BigDecimal actual n lugares hacia la izquierda.

  • Si n no es negativo, la llamada simplemente agrega n a la escala.
  • Si n es negativo, la llamada es equivalente a movePointRight(-n).

El valor BigDecimal devuelto por este método tiene valor (this × 10-n) y escala máxima (this.scale()+n, 0).

Sintaxis:

public BigDecimal movePointLeft(int n)

Parámetro: El método toma un parámetro n de tipo entero que se refiere al número de lugares que se requiere mover el punto decimal hacia la izquierda.

Valor devuelto: el método devuelve el mismo valor BigDecimal con el punto decimal movido n lugares a la izquierda.

Excepción: el método lanza una ArithmeticException si la escala se desborda.
Ejemplos:

Input: value = 2300.9856, Leftshift = 3
Output: 2.3009856
Explanation:
while shifting the decimal point of 2300.9856 
by 3 places to the left, 2.3009856 is obtained
Alternate way: 2300.9856*10^(-3)=2.3009856

Input: value = 35001, Leftshift = 2
Output: 350.01

El siguiente programa ilustra el método movePointLeft() de BigDecimal:

// Program to demonstrate movePointLeft() method of BigDecimal 
  
import java.math.*;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // Create BigDecimal object
        BigDecimal bigdecimal = new BigDecimal("2300.9856");
  
        // Create a int i for decimal left move distance
        int i = 3;
  
        // Call movePointLeft() method on BigDecimal by shift i
        // Store the return value as BigDecimal
        BigDecimal changedvalue = bigdecimal.movePointLeft(i);
  
        String result = "After applying decimal move left by move Distance " 
        + i + " on " + bigdecimal + " New Value is " + changedvalue;
  
        // Print result
        System.out.println(result);
    }
}
Producción:

After applying decimal move left by move Distance 3 on 2300.9856 New Value is 2.3009856

Referencia: https://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html#movePointLeft(int)

Publicación traducida automáticamente

Artículo escrito por AmanSingh2210 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *