Agregar un carácter como separador de miles a un número dado en Java

Dado un número entero n y el carácter ch , devuelve una String usando el carácter como separador de miles en el número dado.

Ejemplos:

Entrada: n=1234 , ch =’.’

Salida: 1.234 

En la entrada anterior, «.» El carácter se usa como separador de miles y se coloca entre cientos y miles de lugares comenzando desde la derecha. La salida obtenida se devuelve como formato de string.

Entrada: n=123456789, ch =’.’

Salida: 123.456.789

Acercarse: 

  1. Convierte el número en una string.
  2. Inicie el recorrido de la string desde el lado derecho.
  3. Agregue el carácter separador después de cada tres dígitos

A continuación se muestra el código que usa el mismo enfoque usando Java.
 

Java

// Java Program for Adding a character as thousands separator
// to the given number and returning in string format
  
class GFG {
  
    static String thousandSeparator(int n, String ch)
    {
  
        // Counting number of digits
        int l = (int)Math.floor(Math.log10(n)) + 1;
        StringBuffer str = new StringBuffer("");
        int count = 0;
        int r = 0;
  
        // Checking if number of digits is greater than 3
        if (l > 3) {
  
            for (int i = l - 1; i >= 0; i--) {
  
                r = n % 10;
                n = n / 10;
                count++;
                if (((count % 3) == 0) && (i != 0)) {
  
                    // Parsing String value of Integer
                    str.append(String.valueOf(r));
  
                    // Appending the separator
                    str.append(ch);
                }
                else
                    str.append(String.valueOf(r));
            }
            str.reverse();
        }
  
        // If digits less than equal to 3, directly print n
        else
            str.append(String.valueOf(n));
  
        return str.toString();
    }
  
    // Driver code
    public static void main(String[] args)
    {
  
        int n = 123456789;
        String ch = ".";
        System.out.println(thousandSeparator(n, ch));
    }
}
Producción

123.456.789

Complejidad de tiempo: O(n)

Publicación traducida automáticamente

Artículo escrito por user_00 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 *