Cos'è il troncamento in Java?

Cos'è il troncamento in Java?

Il significato inglese di troncare è quello ordinare O fesso , O taglio qualcosa e viene chiamato il processo di rifinitura troncamento . Nel campo dell'informatica, il termine è spesso usato in riferimento a tipi di dati o variabili (come Corda , numeri in virgola mobile, ecc.). È un modo di approssimazione. Discutiamone cos'è il troncamento in Java E come possiamo troncare un float O numero di tipo doppio tramite a Programma Java .

Troncamento

In Giava programmazione , troncamento significa tagliare alcune cifre di a galleggiante O doppio tipo numero o alcuni caratteri di a corda da destra. Possiamo anche troncare completamente la parte decimale che la rende un numero intero . Ricordare che dopo il troncamento il numero non verrà arrotondato al valore più vicino. Quindi, il troncamento è un modo di approssimazione .

Di solito viene utilizzato in informatica (specialmente nei database e nella programmazione) quando la divisione viene eseguita con numeri interi e il risultato deve essere un numero intero.

Nota: il troncamento e l'arrotondamento sono due concetti completamente diversi. Non è la stessa cosa di Math.floor() , Matematica.ceil() , E Matematica.round() funzione del Classe di matematica .

Ora abbiamo capito chiaramente il concetto di troncamento. Vediamo alcuni approcci per troncare numeri e stringhe anche di tipo float o double.

Esempio

Supponiamo che un numero di tipo doppio numero=19.87874548973101 viene data. È necessario che ci siano solo 3 cifre dopo il punto decimale. In questi casi, applichiamo troncamento . Dopo aver troncato le restanti cifre, otteniamo 19.878 .

Se troncamo tutte le cifre che seguono il punto decimale, diventa 19 . Se il numero è stato arrotondato all'intero più vicino diventa venti .

Cos

Ora abbiamo capito chiaramente il troncamento. Vediamo alcuni approcci per troncare numeri e stringhe anche di tipo float o double.

Si avvicina

Esistono due approcci per troncare un numero:

  • Utilizzando la logica matematica
  • Utilizzo della corrispondenza delle stringhe

Utilizzando la logica matematica

Possiamo troncare il numero utilizzando i seguenti passaggi:

  1. Sposta il decimale del numero specificato (n) nella cifra decimale specificata (dp) moltiplicando il numero 10 d.p .
  2. Determinare il valore minimo del valore risultante (che otteniamo dal passaggio 1).
  3. Dividere il valore minimo per 10 d.p .

Il valore che otteniamo dal passaggio 3 è un valore troncato.

Se rappresentiamo i passaggi precedenti in termini matematici, otteniamo:

  • n = n*pow(10,decimale);
  • n = piano(n);
  • n = n / pow(10,decimale);

Esempio: Troncare 1.231 fino a 2 cifre decimali.

n=1.231*potenza(10,2)
n=1.231*100 = 123.100
n=piano(123.100) = 123
n=123/potenza(10,2)
n=123/100 = 1.23

Implementiamo la logica di cui sopra in un programma Java.

TroncamentoEsempio1.java

 import java.io.*; public class TrunctionExample1 { //driver code public static void main(String args[]) { //the number to truncate double num = 19.87874548973101; //number of digits to take after decimal int digits = 5; System.out.println('The number before truncation is: '+num); //calling user-defined method that truncates a number truncateNumber(num, digits); } //user-defined method to truncate a number static void truncateNumber(double n, int decimalplace) { //moves the decimal to the right n = n* Math.pow(10, decimalplace); //determines the floor value n = Math.floor(n); //dividing the floor value by 10 to the power decimalplace n = n / Math.pow(10, decimalplace); //prints the number after truncation System.out.println('The number after truncation is: '+n); } }  

Produzione:

 The number before truncation is: 19.87874548973101 The number after truncation is: 19.87874  

Utilizzo della corrispondenza delle stringhe

  1. Converti il ​​tipo double o float in Corda
  2. Trovare il decimale punto nella stringa.
  3. Incrementa la variabile ( contare ) finché non otteniamo il punto decimale.
  4. Memorizza la nuova stringa e passala al file parseDouble() metodo. Il metodo restituisce il valore double rappresentato dalla stringa.

Il valore che otteniamo dal passaggio 4 è un valore troncato.

Implementiamo i passaggi precedenti in un programma Java.

TroncamentoEsempio2.java

 import java.io.*; public class TruncationExample2 { public static void main(String args[]) { //the number to truncate double num = 556.9871233986399; //number of digits to take after decimal int decimalplaces = 3; //converting a double type value to String type String strnum = '' + num; //stores the truncated string String strval = ''; int count = -1; //loop iterates over the string until the condition becomes false for (int i = 0; i decimalplaces) { break; } //if the above condition returns false else block is executed else //compares each character of the strnum with decimal //if returns true variable by 1 if (strnum.charAt(i) == '.') { count = 1; } else if (count >= 1) { //increments the count variable by 1 ++count; } //converting the number into string strval = strval + strnum.charAt(i); } System.out.println('The number before truncation is: '+num); //returns double value represented by the string argument double truncatedvalue = Double.parseDouble(strval); System.out.println('The number after truncation is: '+truncatedvalue); } }  

Produzione:

 The number before truncation is: 556.9871233986399 The number after truncation is: 556.987  

Possiamo anche tagliare una stringa in Java . Per questo la classe Java String fornisce il metodo trim().