Преобразование целочисленного типа данных в байтовый тип данных с использованием приведения типов в Java

Опубликовано: 5 Октября, 2022

При примитивном приведении мы можем преобразовать информацию о байтовом типе данных в информацию о целочисленном типе данных, используя неявное приведение типов. Когда мы пытаемся преобразовать информацию о целочисленном типе данных в информацию о байтовом типе данных, в это время происходит явное приведение типа.

Явный тип приведения

Преобразование информации более высокого типа данных в информацию более низкого типа данных.

Syntax:

Datatype1 variable1 = information;

Datatype2 Variable2 = (Datatype2) Variable1 

Here

Datatype1 = Higher Data type

Datatype2 = Lower Data type

В этой статье мы собираемся преобразовать целое число в байт.

Пример 1:

Учитывая int a = 1000, когда мы преобразуем его в информацию о типе данных byte, он покажет вывод -24, это связано с тем, что диапазон байтов составляет от -128 до 127 .

Java




public class IntToByte {
    public static void main(String args[])
    {
        int a = 1000;
        byte b = (byte)a;
        System.out.println(b);
    }
}

Выход:

-24

Объяснение:

Java




public class IntegerByte {
    public static void main(String args[])
    {
        int c = 1000;
          // as byte range from -128 to 127
        int d = 128
        
          // Conditions if our value 
          // is positive or negative
        int x = c / d; 
        int f = x + 1;
        int g = x - 1;
        int e = (c > 0) ? f : g;
  
        if (x % 2 == 0) {
            System.out.println(c - d * x);
        }
        else {
            System.out.println(c - d * (e));
        }
    }
}

Выход:

-24

Здесь мы разделили диапазон байтов на две части.

  • -128 до 0
  • от 0 до 127

И мы задали условия в двух частях, используя оператор if-else. Давайте посмотрим еще один пример.

Пример 2:

Java




public class IntegerByte {
    public static void main(String args[])
    {
        int c = -2000;
        // as byte range from -128 to 127
        int d = 128
          // Conditions if our value
          // is positive or negative
        int x = c / d; 
        int f = x + 1;
        int g = x - 1;
        int e = (c > 0) ? f : g;
        if (x % 2 == 0) {
            System.out.println(c - d * x);
        }
        else {
            System.out.println(c - d * (e));
        }
    }
}

Выход:

48