Аватарка пользователя Аня Карташова
Аня Карташова

Шпаргалка по типам чисел в Java

Составили шпаргалку по числам в Java. Рассмотрели целочисленный тип, числа с плавающей точкой, BigInteger и BigDecimal и символьный тип.

1031

Одним из ключевых аспектов работы с числами в Java является разнообразие типов данных, предоставляемых языком.

В Java существуют различные типы чисел, каждый из которых имеет свои особенности и предназначен для выполнения определенных задач. Среди них:

  1. Целочисленные типы
  2. Числа с плавающей точкой
  3. Символьный тип
  4. Типы чисел BigInteger и BigDecimal

Рассмотрим их поподробнее. 

Целочисленные типы в Java

В Java есть 4 цельночисленных типа:

  • byte: 8-битное целое число, со знаком (от -128 до 127);
  • short: 16-битное целое число, со знаком (от -32,768 до 32,767);
  • int: 32-битное целое число, со знаком (от -2,147,483,648 до 2,147,483,647);
  • long: 64-битное целое число, со знаком (от -9,223,372,036,854,775,808 до 9,223,372,036,854,775,807).

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

Такое разделение по битности нужно, чтобы сэкономить память и ресурсы процессора во время выполнения кода.

Например, использование типов с меньшей битностью, таких как byte или short, позволяет экономить память при хранении большого количества целых чисел, когда размер не является критичным и диапазон значений ограничен.

Если нам нужно хранить возраст людей, которое будет находиться в диапазоне от 0 до 150, можно использовать тип byte, который занимает только 8 бит и может хранить значения от -128 до 127. 

Пример кода с использованием целочисленного типа int:

			public class IntegerExample {
    public static void main(String[] args) {
        // Объявление переменных целочисленных типов
        int number1 = 10;
        int number2 = 5;
        int result;

        // Операции с целыми числами
        result = number1 + number2; // Сложение
        System.out.println("Сумма: " + result);

        result = number1 - number2; // Вычитание
        System.out.println("Разность: " + result);

        result = number1 * number2; // Умножение
        System.out.println("Произведение: " + result);

        result = number1 / number2; // Целочисленное деление
        System.out.println("Целочисленное деление: " + result);

        int remainder = number1 % number2; // Остаток от деления
        System.out.println("Остаток от деления: " + remainder);

        // Инкремент и декремент
        number1++; // Инкрементирование на 1
        number2--; // Декрементирование на 1
        System.out.println("Инкремент number1: " + number1);
        System.out.println("Декремент number2: " + number2);
    }
}

		

Выводом будет:

			Сумма: 15
Разность: 5
Произведение: 50
Целочисленное деление: 2
Остаток от деления: 0
Инкремент number1: 11
Декремент number2: 4
		

Числа с плавающей точкой в Java

В Java есть 2 типа чисел с плавающей точкой:

  • float: 32-битное число с плавающей точкой (от 1.4e-45 до 3.4e+38) с точностью около 7 знаков после запятой;
  • double: 64-битное число с плавающей точкой (от 4.9e-324 до 1.8e+308) с точностью около 15 знаков после запятой.

Числа с плавающей точкой в Java используются для представления нецелых дробных чисел c десятичными частями. Числа с плавающей точкой предоставляют широкий диапазон значений и большую точность, чем целочисленные типы.

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

Числа с плавающей точкой также поддерживают сложные операции вроде взятия квадратного корня, логарифмов и тригонометрических функций.

Тип float может представлять числа от примерно 1.4e-45 до 3.4e+38, а тип double может представлять числа от примерно 4.9e-324 до 1.8e+308.

Тип float имеет точность около 7-8 знаков после запятой, а тип double имеет точность около 15-16 знаков после запятой.

Пример кода с использованием чисел с плавающей точкой:

			public class FloatingPointExample {
    public static void main(String[] args) {
        // Объявление переменных чисел с плавающей точкой
        double number1 = 3.14;
        double number2 = 2.71;
        double result;

        // Операции с числами с плавающей точкой
        result = number1 + number2; // Сложение
        System.out.println("Сумма: " + result);

        result = number1 - number2; // Вычитание
        System.out.println("Разность: " + result);

        result = number1 * number2; // Умножение
        System.out.println("Произведение: " + result);

        result = number1 / number2; // Деление
        System.out.println("Деление: " + result);
    }
}
		

Вывод:

			Сумма: 5.85
Разность: 0.42999999999999994
Произведение: 8.5094
Деление: 1.1583011583011583
		

Символьный тип в Java

Символьный тип char — это 16-битный символ Unicode (от \u0000 до \uffff). Тип char является псевдоцелочисленным типом, поэтому значения этого типа можно задавать в виде числа - кода символа из таблицы кодировки UTF-16.

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

Символьным типом обозначаются названия переменных, текстовые сообщения, метки, названия файлов.

Также он позволяет работать с символами управления, которые используются для форматирования текста или внедрения специальных символов в вывод. Например, символ перевода строки \n или символ табуляции \t используются для управления выводом текста или форматирования.

Пример использования символьного типа в Java:

			public class CharExample {
   public static void main(String[] args) {
      char grade = 'A';
      char dollarSign = '$';
      char digit = '4';
      char specialChar = '#';

      System.out.println("Оценка: " + grade);
      System.out.println("Символ доллара: " + dollarSign);
      System.out.println("Цифра: " + digit);
      System.out.println("Специальный символ: " + specialChar);
   }
}
		

Вывод:

			Оценка: A
Символ доллара: $
Цифра: 4
Специальный символ: #
		

Типы чисел BigInteger и BigDecimal в Java

В Java есть 2 уникальных типа чисел.

  • BigInteger: используется для работы с очень большими целыми числами;
  • BigDecimal: используется для работы с очень большими числами с плавающей точкой, с высокой точностью.

Типы чисел BigInteger и BigDecimal в Java используются для работы с большими и точными числами, которые выходят за диапазоны, предоставляемые обычными типами данных, такими как int или double.

BigInteger используется для работы с целыми числами произвольного размера. Он предоставляет методы для выполнения арифметических операций, таких как сложение, вычитание, умножение и деление, над числами с произвольным количеством цифр. Это делает BigInteger особенно полезным при работе с большими числами, которые превышают диапазон типов данных int или long.

BigDecimal, в свою очередь, используется для работы с числами с плавающей точкой произвольной точности. В отличие от типов данных float и double, которые представляют числа с ограниченной точностью, BigDecimal предоставляет точные результаты при выполнении арифметических операций с десятичными числами. Это особенно важно при работе с финансовыми операциями, где требуется высокая точность расчетов.

Пример кода с использованием чисел BigInteger и BigDecimal на Java:

			import java.math.BigInteger;
import java.math.BigDecimal;

public class BigNumberExample {
   public static void main(String[] args) {
      BigInteger bigInteger = new BigInteger("12345678901234567890");
      BigDecimal bigDecimal = new BigDecimal("3.141592653589793238462643383");

      System.out.println("BigInteger: " + bigInteger);
      System.out.println("BigDecimal: " + bigDecimal);

      BigInteger result1 = bigInteger.add(new BigInteger("98765432109876543210"));
      System.out.println("Сумма BigInteger: " + result1);

      BigDecimal result2 = bigDecimal.multiply(new BigDecimal("2.718281828459045"));
      System.out.println("Произведение BigDecimal: " + result2);
   }
}
		

Вывод:

			BigInteger: 12345678901234567890
BigDecimal: 3.141592653589793238462643383
Сумма BigInteger: 111111111011111111100
Произведение BigDecimal: 8.53973422267357976068929674195
		

Заключение

Надеемся, вам стало понятнее, какие типы чисел в Java использовать для решения ваших задач. Обращайтесь к этой статье как к шпаргалке, если у вас возникли сложности в определении типов данных. 

Также подпишитесь на тэг Java, чтобы следить за новыми статьями по языку программирования. 

Успехов!

1031