Page 78 - 4657
P. 78
Double і Float
Double і Float - підкласи класу Number. На додаток до
чотирьох методів доступу, оголошеним у суперкласі, ці класи
містять кілька сервісних функцій, що полегшують роботу зі
значеннями double і float. У кожного з класів є конструктори, що
дозволяють ініціалізувати об'єкти значеннями типів double і
float, крім того, для зручності користувача, ці об'єкти можна
ініціалізувати і об'єктом String, що містить текстове
представлення речовинного числа. Приведений нижче приклад
ілюструє створення екземплярів класу Double за допомогою
обох конструкторів.
class DoubleDemo {
public static void main(String args[]) {
Double d1 = new Double(3.14159);
Double d2 = new Double("314159E-5");
System.out.println(d1 + " = " + d2 + " -> " +
d1.equals(d2));
} }
Як ви можете бачити з результату роботи цієї програми,
метод equals повертає значення true, а це означає, що обоє
використаних у прикладі конструктора створюють ідентичні
об'єкти класу Double.
С:\> java DoubleDemo
3.14159 = 3.14159 -> true
Нескінченність і Na
У специфікації IEEE для чисел з речовинною крапкою є
два значення типу double, що трактуються спеціальним чином:
нескінченність і Na (Not a Number - невизначеність). У класі
Double є тести для перевірки обох цих умов, причому в двох
формах - у виді методів (статичних), яким значення double
передається як параметр, і у виді методів, що перевіряють число,
що зберігається в об'єкті класу Double.
76