Convertir double a int java

Doble a cadena java

En este tutorial voy a compartir 3 formas de convertir double a int en java. Como sabes, el valor doble primitivo puede contener dígitos decimales (dígitos después del punto decimal). Los dígitos decimales se truncan cuando convertimos double con dígitos decimales en el valor int. Si el valor de double es 9.99 entonces dará 9 como valor int. De las tres formas hay una (función Math.round()) por la que se puede redondear al valor entero más cercano, es decir, el valor int será 10 para el valor doble 9,99.

En este ejemplo convertiré double a int usando typecasting. El encasillamiento se hace mencionando int entre los paréntesis antes del valor decimal. La única desventaja del encasillamiento es que truncará los dígitos decimales del valor doble. No redondeará al valor más cercano. Por ejemplo, si tenemos el valor doble 99.99, después de la conversión el resultado será 99 y no 100. Si quieres que el resultado sea 100, utiliza la función Math.round().

En este ejemplo voy a convertir doble a int usando la función Math.round(). Esta función ayuda a redondear el doble al entero más cercano. Por ejemplo, si tenemos el doble 99.99 entonces obtendremos 100 como valor int.

Convertir double a int en c

Como hemos visto, al convertir float a int, el método Math.round() está sobrecargado y la versión que acepta double devuelve un valor primitivo long. Si necesitas un valor primitivo int, entonces tienes que hacer un casting adicional de long a int en Java. Por cierto, esa no es la única manera.

  Javascript get textbox value

También puedes convertir una variable primitiva double en un objeto envolvente Double y luego llamar al método intValue() para obtener un valor int correspondiente. En este artículo, te mostraré un par de ejemplos para convertir double a int en Java.

La forma más fácil de convertir un double a int en Java es mediante el type casting, pero sólo funciona cuando tu requisito es deshacerte de cualquier cosa después del punto decimal. Dado que double es un tipo de datos más grande que int, necesita ser reducido como se muestra a continuación:

Si recuerdas, los números de punto flotante son por defecto double en Java, así que no necesitas ningún sufijo, a diferencia de la representación de valores float. Como dije, el casting se deshace de cualquier cosa después del decimal, así que incluso 6.999 se convierte en 6.

Si quieres convertir un valor doble de punto flotante al valor int más cercano, entonces debes usar el método Math.round(). Acepta un valor doble y lo convierte en el valor largo más cercano añadiendo 0,5 y truncando los puntos decimales. Una vez obtenido el valor long, puedes volver a convertirlo en int, como se muestra a continuación:

Convertir a doble en java

Salida: 98Double: El tipo de datos double es un punto flotante de 64 bits IEEE 754 de doble precisión. Su rango de valores es infinito. El tipo de datos double se utiliza comúnmente para valores decimales, al igual que float. El tipo de datos double tampoco debe utilizarse nunca para valores precisos, como la moneda. Su valor por defecto es 0,0. Ejemplo: double d1 = 10,5Integer: El tipo de datos Integer o int es un entero de 32 bits con signo en complemento a dos. Su rango de valores está comprendido entre – 2.147.483.648 (-2^31) y 2.147.483.647 (2^31 -1) (inclusive). Su valor mínimo es – 2.147.483.648 y su valor máximo es 2.147.483.647. Su valor por defecto es 0. El tipo de datos int se utiliza generalmente como un tipo de datos por defecto para los valores integrales a menos que si no hay ningún problema acerca de la memoria.Ejemplo: int a = 10AprochesHay numerosos enfoques para hacer la conversión de tipo de datos Double a Integer (int) tipo de datos. Algunos de ellos se enumeran a continuación.Enfoque 1: Usando TypeCastingEsta técnica es muy simple y fácil de usar.Sintaxis:double data = 3452.345

  Curso javascript barcelona

Integer – 3452Complejidad temporal: O(1) ya que se utilizan operaciones constantes.Espacio auxiliar: O(1) ya que no se requiere espacio adicional.Enfoque 2: Uso del método Double.intValue()Esta técnica es similar al método typecasting. La principal diferencia entre el método typecasting y este método es que el método typecasting es un método explícito, y este método es una clase Wrapper Double trunca todos los dígitos después del punto decimal.Sintaxis:double data = 3452.345

Tipos inconvertibles; no se puede convertir ‘java.lang.double’ en ‘int’

Aunque tanto float como int son tipos de datos de 32 bits de ancho, el float tiene un rango mayor que el valor primitivo entero. Dado que un float es más grande que un int, puedes convertir un float en un int simplemente haciendo un down-casting, por ejemplo, (int) 4.0f te dará un entero 4. Por cierto, debes recordar que el typecasting sólo se deshace de todo lo que hay después del punto decimal, no realiza ninguna operación de redondeo o de piso en el valor. Así que si tu valor flotante es 3.999, la conversión a un entero producirá 3, no 4. Si necesitas redondear, entonces considera usar el método Math.round(), que convierte el float a su entero más cercano añadiendo +0.5 y luego truncándolo.  Por cierto, Math.random() está sobrecargado tanto para float como para double, así que también puedes usarlo para convertir double a long. Veamos un ejemplo de conversión de un valor float a int en Java.

  Humble Bundle Python: para lo que quieras por estas herramientas para aprender a programar valoradas en 1.400 dólares

Si tu necesidad es convertir un número de punto flotante a un entero, simplemente deshaciéndote de los valores fraccionarios después del punto decimal, entonces el down-casting es la mejor manera de hacerlo. Es simple, eficiente y elegante, Aquí está un ejemplo de casting float a int en Java:

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad