logo

Čo je skrátenie v jazyku Java?

Anglický význam skrátiť je do orezať alebo prerezávať , alebo rezať niečo a proces orezávania sa nazýva skrátenie . V oblasti informatiky sa tento výraz často používa v súvislosti s typmi údajov alebo premennými (napr Reťazec , čísla s pohyblivou rádovou čiarkou atď.). Je to spôsob aproximácie. Poďme diskutovať čo je skrátenie v jazyku Java a ako môžeme skrátiť plávajúce alebo dvojité číslo cez a Java program .

Skrátenie

In Java programovanie , skrátenie znamená orezať niektoré číslice a plavák alebo dvojitého typu číslo alebo niektoré znaky a reťazec sprava. Môžeme tiež úplne skrátiť desatinnú časť, ktorá z nej robí an celé číslo . Pamätajte, že po skrátení sa číslo nezaokrúhli na najbližšiu hodnotu. teda skrátenie je spôsob aproximácie .

Zvyčajne sa používa vo výpočtovej technike (najmä v databáze a programovaní), keď sa delenie vykonáva celými číslami a výsledky musia byť celé číslo.

Poznámka: Skrátenie a zaoblenie sú dva úplne odlišné pojmy. Nie je to isté ako Math.floor() , Math.ceil() , a Math.round() funkciu Hodina matematiky .

Teraz sme jasne pochopili pojem skrátenia. Pozrime sa na niektoré prístupy ku skráteniu plávajúcich alebo dvojitých čísel a reťazcov.

Príklad

Predpokladajme, že ide o číslo dvojitého typu num=19,87874548973101 je dané. Vyžaduje sa, aby za desatinnou čiarkou boli iba 3 číslice. V takýchto prípadoch uplatňujeme skrátenie . Po skrátení zvyšných číslic dostaneme 19,878 .

jeden milión v číslach

Ak skrátime všetky číslice za desatinnou čiarkou, stane sa to 19 . Ak bolo číslo zaokrúhlené na najbližšie celé číslo, stane sa dvadsať .

Čo je skrátenie v jazyku Java

Teraz sme jasne pochopili skrátenie. Pozrime sa na niektoré prístupy na skrátenie plávajúcich alebo dvojitých čísel a reťazcov.

Prístupy

Existujú dva spôsoby skrátenia čísla:

  • Použitie matematickej logiky
  • Použitie zhody reťazcov

Použitie matematickej logiky

Číslo môžeme skrátiť pomocou nasledujúcich krokov:

  1. Presuňte desatinné miesto zadaného čísla (n) na dané desatinné miesto (dp) vynásobením čísla 10dp.
  2. Určte spodnú hodnotu výslednej hodnoty (ktorú získame z kroku 1).
  3. Vydeľte hodnotu podlahy 10dp.

Hodnota, ktorú získame z kroku 3, je skrátená hodnota.

Ak vyššie uvedené kroky predstavíme matematicky, dostaneme:

  • n = n*pow(10,desatinné miesto);
  • n = poschodie(n);
  • n = n / pow(10,desatinné miesto);

Príklad: Skráťte 1,231 na 2 desatinné miesta.

n=1,231*pow(10,2)
n = 1,231 x 100 = 123 100
n=poschodie(123,100) = 123
n=123/pow(10,2)
n=123/100= 1.23

dátové typy java

Implementujme vyššie uvedenú logiku v programe Java.

TruncationExample1.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); } } 

Výkon:

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

Použitie zhody reťazcov

  1. Preveďte typ double alebo float na Reťazec
  2. Nájsť desiatkový bod v reťazci.
  3. Zvýšte premennú ( počítať ), kým nedostaneme desatinnú čiarku.
  4. Uložte nový reťazec a odovzdajte ho parseDouble() metóda. Metóda vracia dvojitú hodnotu reprezentovanú reťazcom.

Hodnota, ktorú získame z kroku 4, je skrátená hodnota.

Implementujme vyššie uvedené kroky v programe Java.

TruncationExample2.java

v porovnaní s metódou 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); } } 

Výkon:

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

Môžeme tiež orezať reťazec v jazyku Java . Pre túto triedu Java String poskytuje metódu trim().