Енглеско значење оф окрњити је да трим или пруне , или резати нешто и процес обрезивања се зове скраћивање . У области рачунарства, термин се често користи у односу на типове података или променљиве (нпр Низ , бројеви са покретним зарезом итд.). То је начин апроксимације. Хајде да причамо шта је скраћење у Јави и како можемо скратити плутајућу или број двоструког типа кроз а Јава програм .
Трунцатион
Ин Јава програмирање , скраћивање значи скратити неке цифре а пловак или двоструког типа број или неки карактер а низ с десна. Такође можемо потпуно скратити децимални део који га чини ан цео број . Запамтите да након скраћивања број неће бити заокружен на најближу вредност. Стога, скраћивање је начин апроксимације .
јава једнака
Обично се користи у рачунарству (нарочито у бази података и програмирању) када се дељење врши целим бројевима и резултати морају бити цео број.
Напомена: Скраћивање и заокруживање су два потпуно различита концепта. Није исто што и Матх.флоор(), Матх.цеил() , и Матх.роунд() функција на Час математике .
Сада смо јасно разумели концепт скраћивања. Хајде да видимо неке приступе за скраћење плутајућих или двоструких бројева и низова.
Пример
Претпоставимо, број двоструког типа нум=19.87874548973101 се даје. Потребно је да иза децималне запете буду само 3 цифре. У таквим случајевима примењујемо скраћивање . Након скраћивања осталих цифара, добијамо 19,878 .
Ако скратимо све цифре које долазе после децималног зареза, постаје 19 . Ако је број заокружен на најближи цео број постаје двадесет .
Сада смо јасно разумели скраћивање. Хајде да видимо неке приступе за скраћење плутајућих или двоструких бројева и низова.
Прилази
Постоје два приступа за скраћивање броја:
- Коришћење математичке логике
- Коришћење подударања низова
Коришћење математичке логике
Можемо скратити број користећи следеће кораке:
- Померите децималу наведеног броја (н) на дато децимално место (дп) множењем броја 10дп.
- Одредите доњу вредност резултујуће вредности (коју добијамо из корака 1).
- Поделите вредност пода са 10дп.
Вредност коју добијамо у кораку 3 је скраћена вредност.
Ако представимо горе наведене кораке у смислу математике, добићемо:
- н = н*пов(10, децимално место);
- н = спрат(н);
- н = н / пов(10, децимално место);
Пример: Скратите 1.231 на 2 децимале.
н=1,231*пов(10,2)
н=1,231*100 = 123,100
н=под(123.100) = 123
н=123/пов(10,2)
н=123/100 = 1.23
Хајде да имплементирамо горњу логику у Јава програм.
ТрунцатионЕкампле1.јава
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); } }
Излаз:
ц++ пар
The number before truncation is: 19.87874548973101 The number after truncation is: 19.87874
Коришћење подударања низова
- Претворите тип доубле или флоат у Низ
- Финд тхе децималан тачка у низу.
- Повећајте променљиву ( цоунт ) док не добијемо децимални зарез.
- Сачувајте нови стринг и проследите га парсеДоубле() методом. Метод враћа двоструку вредност представљену стрингом.
Вредност коју добијамо из корака 4 је скраћена вредност.
Хајде да имплементирамо горе наведене кораке у Јава програм.
ТрунцатионЕкампле2.јава
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); } }
Излаз:
The number before truncation is: 556.9871233986399 The number after truncation is: 556.987
Можемо и ми исеците стринг у Јави . За ову Јава Стринг класа обезбеђује метод трим().