java double tutorial with programming examples
Този урок ще обясни примитивния тип данни Java Double. Също така ще обсъдим свързани класове като Java BigDecimal и DecimalFormat Class с примери:
В този урок ще изследваме двойния тип данни с помощта на синтаксис и примери за програмиране.
Десетичният формат на Java и големите десетични класове са обяснени тук с някои често задавани въпроси, които ще ви помогнат да разберете ясно двойния тип данни.
=> Погледнете тук ръководството за начинаещи Java.
Какво ще научите:
Примитивни типове Java
Както всички знаем, Java има осем примитивни типа, т.е. int, short, long, byte, float, double, char и boolean. Java double е един от примитивните типове данни, чиято ширина и обхват са повече от плаващи.
Примитивни типове | Ширина (бита) | Обхват |
---|---|---|
двойно | 64 | 4.9e-324 до 1.8e + 308 |
Java Double
Java double се използва за представяне на числа с плаваща запетая. Той използва 64 бита за съхраняване на променлива стойност и има диапазон, по-голям от типа float.
Синтаксис:
// square root variable is declared with a double type. double sqrt;
Двоен пример за Java
В този пример изчисляваме квадратния корен от площта на правоъгълник. Взехме дължина и ширина като цяло число и изчислихме площта, която е от тип цяло число.
Тъй като квадратният корен е най-вероятно да ви даде десетична стойност, декларирахме променливата Area_sqrt като двойна и изчислихме квадратния корен.
public class doubleExample { public static void main(String() args) { int length=15, breadth=25; int area; area = length*breadth; // calculating area of the rectangle System.out.println('Area of rectangle is ' + area); // declared a varibale which will store the square root double Area_sqrt; // calculating square root of Area of the rectangle Area_sqrt = Math.sqrt(area); System.out.println('Square root of area is ' +Area_sqrt); } }
Изход
Десетичен формат на Java
Java има специален клас, наречен DecimalFormat, който се използва за форматиране на числата. Това форматиране е адаптивно.
В примера по-долу дефинирахме модел, разделен със запетая ‘,’ и десетично число от тип double. Използвайки този шаблон или формат, ще покажем нашия входен номер.
Предадохме шаблона в клас Десетичен формат и форматирахме изхода, използвайки препратката „df“.
import java.text.DecimalFormat; public class ExampleFormat { public static void main(String() args) { // defining a format in which number will be displayed String formatter = '##,###,###.##'; // initialized the decimal number double num = 12345678.12; // passed the pattern into the Decimal format class DecimalFormat df = new DecimalFormat(formatter); // printed the formatted number System.out.println('The formatted number is: ' +df.format(num)); } }
Изход
Java BigDecimal
Това отново е специален Java клас, който осигурява прости аритметични операции с числото (добавяне, изваждане, умножаване и разделяне), закръгляване на резултата, преобразуване на формати и т.н.
Нека да разгледаме примера по-долу, за да разберем това по-добре.
Закръгляване на числото
най-добрият mp3 изтеглящ музика за компютър
В примера по-долу демонстрирахме разликата между простото изваждане на десетичната и изваждането чрез класа Big-Decimal.
Инициализирахме две двойни променливи и изчислихме разликата между техните стойности. Отново сме инициализирали две променливи с помощта на Big-Decimal клас със същата стойност и сме изчислили тяхната разлика.
Накрая отпечатахме и двете стойности и можете да видите разликата между тях. Изчислената стойност на Big Decimal беше автоматично закръглена.
import java.math.BigDecimal; public class example { public static void main(String() args) { // Initialized two double numbers double length1 = 1.06; double breadth1 = 1.07; // Subtracting length and breadth double sub = breadth1-length1; System.out.println('Simple Subtraction = ' +sub); // Initialized two big decimal numbers with same value BigDecimal length2 = new BigDecimal('1.06'); BigDecimal breadth2 = new BigDecimal('1.07'); // Subtracting length and breadth length2 = breadth2.subtract(length2); System.out.println('Big Decimal Subtraction = ' + length2); } }
Изход
често задавани въпроси
В # 1) Колко байта отнема двойният тип?
Отговор: 8 байта.
В # 2) Какво представлява MathContext в Java?
Отговор: MathContext е клас в Java, който определя режима на закръгляване и точност. Той осигурява неизменяеми обекти и също така е отговорен за налагането на определени правила за операторите, които се изпълняват от клас Big Decimal.
Правилата са:
RoundingMode.CEILING,
RoundingMode.DOWN,
RoundingMode.FLOOR,
RoundingMode.UP
В примера по-долу сме инициализирали двойна променлива и сме задали различни правила за закръгляване на цифрите. Това работи в съответствие с изходния спецификатор, който сме предали.
Например, В първото изявление за печат ние изчисляваме функцията на тавана, където сме преминали ‘3’ като изходен спецификатор. Това означава, че изходът ще има три цифри. По същия начин, в последното изявление сме предали ‘1’, така че изходът ще съдържа 1 цифра.
import java.math.BigDecimal; import java.math.MathContext; import java.math.RoundingMode; public class example { public static void main(String() args) { double d = 3.14; // Rounded off to the upper limit, the output will contain 3 digit System.out.println(new BigDecimal(d, new MathContext(3, RoundingMode.CEILING))); // Rounded off to the lower limit, the output will contain 3 digit System.out.println(new BigDecimal(d, new MathContext(3, RoundingMode.DOWN))); /* * Rounded off to the previous integer (discards the decimal value) * The output will contain 1 digit */ System.out.println(new BigDecimal(d, new MathContext(1, RoundingMode.FLOOR))); /* * Rounded off to the next integer (discards the decimal and increments integer) * The output will contain 1 digit */ System.out.println(new BigDecimal(d, new MathContext(1, RoundingMode.UP))); } }
Изход
В # 3) Java Big Decimal неизменна ли е?
Отговор: Да. Всеки път, когато правим определена операция в Big Decimal, те връщат нов обект, вместо да модифицират вече създадените обекти.
Q # 4) Каква е разликата между float и double?
Отговор: По-долу са посочени разликите между float и double.
Плувка | Двойна |
---|---|
Той представлява числа с една точност. | Той представлява числа с двойна точност. |
Широчината е 32 бита, а обхватът е 1.4e – 045 до 3.4e + 038 | Широчината е 64 бита, а обхватът е 4.9e – 324 до 1.8e + 308 |
Съдържа 7 цифри. | Съдържа между 15-16 цифри. |
Полезно при операции за конвертиране на валута. | Полезно в sin (), cos (), sqrt (), тъй като типът на връщане е двоен. |
По-бавна от двойната точност. | На съвременния процесор, който е създаден да изпълнява дълги математически операции, двойната точност е много по-бърза. |
В # 5) Какво е клас по математика?
Отговор: Класът по математика е клас в Java, който съдържа всички методи, които се използват при математически операции. Той има две двойни константи, т.е. E (2.72) и pi (3.14).
кое е най-доброто безплатно приложение за изтегляне на музика
Например, sin (), cos (), tan () методи на тригонометрия. sqrt (), log (), pow () методи на експоненциално. Пример за програмиране на pow () вече е описан по-горе (двоен пример за Java).
Заключение
В този урок обяснихме двойния примитивен тип с подходящ пример. Също така включихме DecimalFormat и BigDecimal Java с програми.
Често задавани въпроси също са включени в различни области от двойния тип, като обхват, ширина, размер, клас по математика и др.
След като преминете през този урок, ще можете да разберете подробно двойния тип и ще можете да използвате тези концепции, като пишете собствената си логика за аритметични операции.
=> Прочетете серията Easy Training Training.
Препоръчително четене
- Урок за Java Float с примери за програмиране
- Java String съдържа () Урок за метод с примери
- Java Integer и Java BigInteger клас с примери
- Java урок за низове | Низови методи на Java с примери
- Java Reverse String: Урок с примери за програмиране
- Метод на Java substring () - Урок с примери
- Тернарен оператор в Java - Урок с примери
- Назъбен масив в Java - урок с примери