Метод Java DoubleToRawLongBits

JavaJavaBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом практическом занятии мы узнаем, как использовать метод Double.doubleToRawLongBits() в Java для получения представления в битах long для значения типа double. Этот метод является частью класса java.lang.Double и возвращает биты аргумента в виде long.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/BasicSyntaxGroup(["Basic Syntax"]) java(("Java")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["Object-Oriented and Advanced Concepts"]) java(("Java")) -.-> java/ConcurrentandNetworkProgrammingGroup(["Concurrent and Network Programming"]) java(("Java")) -.-> java/SystemandDataProcessingGroup(["System and Data Processing"]) java(("Java")) -.-> java/ProgrammingTechniquesGroup(["Programming Techniques"]) java/BasicSyntaxGroup -.-> java/output("Output") java/BasicSyntaxGroup -.-> java/type_casting("Type Casting") java/ProgrammingTechniquesGroup -.-> java/method_overloading("Method Overloading") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/packages_api("Packages / API") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/wrapper_classes("Wrapper Classes") java/ConcurrentandNetworkProgrammingGroup -.-> java/working("Working") java/SystemandDataProcessingGroup -.-> java/math_methods("Math Methods") java/SystemandDataProcessingGroup -.-> java/object_methods("Object Methods") java/SystemandDataProcessingGroup -.-> java/system_methods("System Methods") subgraph Lab Skills java/output -.-> lab-117603{{"Метод Java DoubleToRawLongBits"}} java/type_casting -.-> lab-117603{{"Метод Java DoubleToRawLongBits"}} java/method_overloading -.-> lab-117603{{"Метод Java DoubleToRawLongBits"}} java/packages_api -.-> lab-117603{{"Метод Java DoubleToRawLongBits"}} java/wrapper_classes -.-> lab-117603{{"Метод Java DoubleToRawLongBits"}} java/working -.-> lab-117603{{"Метод Java DoubleToRawLongBits"}} java/math_methods -.-> lab-117603{{"Метод Java DoubleToRawLongBits"}} java/object_methods -.-> lab-117603{{"Метод Java DoubleToRawLongBits"}} java/system_methods -.-> lab-117603{{"Метод Java DoubleToRawLongBits"}} end

Импортировать необходимый пакет

В файле с кодом на Java импортируйте пакет java.lang.Double с использованием следующего кода:

import java.lang.Double;

Создать метод для doubleToRawLongBits()

Создайте метод, который будет принимать значение типа double и возвращать эквивалентное значение long в битах с использованием метода doubleToRawLongBits(). Добавьте следующий код в ваш файл Java:

public long getLongBits(double value) {
    return Double.doubleToRawLongBits(value);
}

Использовать метод

Теперь создайте несколько чисел типа double и используйте метод getLongBits(), чтобы получить их соответствующие представления в битах в виде значений long. Используйте следующий код для создания и вывода на печать некоторых чисел типа double и их соответствующих представлений в битах long:

public static void main(String[] args) {
    DoubleToRawLongBitsDemo demo = new DoubleToRawLongBitsDemo();
    double a = 10.002;
    double b = -60.123456789;
    double c = 0.12345;
    System.out.println("Double a = " + a);
    System.out.println("Double a в двоичном виде = " + Long.toBinaryString(demo.getLongBits(a)));
    System.out.println("\nDouble b = " + b);
    System.out.println("Double b в двоичном виде = " + Long.toBinaryString(demo.getLongBits(b)));
    System.out.println("\nDouble c = " + c);
    System.out.println("Double c в двоичном виде = " + Long.toBinaryString(demo.getLongBits(c)));
}

Скомпилировать и запустить программу

Сохраните файл Java и скомпилируйте его с использованием следующей команды в терминале:

javac DoubleToRawLongBitsDemo.java

Теперь запустите файл с байт-кодом с использованием следующей команды:

java DoubleToRawLongBitsDemo

Разобраться с выводом

Вывод программы должен выглядеть примерно так:

Double a = 10.002
Double a в двоичном виде = 0100000000010010001100110011001100110011001100110011001100110011

Double b = -60.123456789
Double b в двоичном виде = 1100000001011111010110011011010100001110010100010100001111000110

Double c = 0.12345
Double c в двоичном виде = 0011111110110001010010100011110101110000111101011100001010100000

Здесь мы можем увидеть, что метод getLongBits() возвращает представление в битах long для заданного входного значения типа double. Мы использовали метод Long.toBinaryString(), чтобы преобразовать значение long в его двоичное представление.

Резюме

В этом практическом занятии мы узнали, как использовать метод Double.doubleToRawLongBits() в Java для возврата представления в битах long для значения типа double. Мы создали Java-программу, которая принимает значение типа double и возвращает соответствующее представление в битах long. Мы также использовали метод Long.toBinaryString(), чтобы преобразовать значение long в его двоичное представление.