Your SlideShare is downloading. ×
Глава 3: примитивные типы и операции с ними в Java
Глава 3: примитивные типы и операции с ними в Java
Глава 3: примитивные типы и операции с ними в Java
Глава 3: примитивные типы и операции с ними в Java
Глава 3: примитивные типы и операции с ними в Java
Глава 3: примитивные типы и операции с ними в Java
Глава 3: примитивные типы и операции с ними в Java
Глава 3: примитивные типы и операции с ними в Java
Глава 3: примитивные типы и операции с ними в Java
Глава 3: примитивные типы и операции с ними в Java
Глава 3: примитивные типы и операции с ними в Java
Глава 3: примитивные типы и операции с ними в Java
Глава 3: примитивные типы и операции с ними в Java
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Глава 3: примитивные типы и операции с ними в Java

18,208

Published on

0 Comments
10 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
18,208
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
118
Comments
0
Likes
10
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Глава 3. Примитивные типы данных и операторы для работы с ними● Булевский (логический) тип● Целые типы, переменные, константы● Основные операторы для работы с целочисленными величинами● Вещественные типы и класс Math● Правила явного и автоматического преобразования типа при работе с числовыми величинами● Оболочечные классы. Упаковка (boxing) и распаковка (unboxing)● Приоритет операторов● Типы-перечисления ( enum) Курс подготовлен при поддержке Sun Microsystems Правила использования материалов опубликованы на www.sun.ru
  • 2. Булевский (логический) тип и логические операторы● Логические операторы:  && -“И”  || - “ИЛИ”  ^ - “Исключающее ИЛИ”  ! - “НЕ”● Логические выражения в Java вычисляются в соответствии с укороченным оцениванием. Принимают значения true или false.● Операторы сравнения применимы к любым величинам a и b одного типа, а также к произвольным числовым величинам a и b, не обязательно имеющим один тип:  == -“равно”  != - “не равно”  < - “меньше”  > - “больше”● Оператор принадлежности instanceof .
  • 3. Целые типы● byte : -128..127; байтовое целое со знаком● short : - 32768.. 32767; короткое целое● char : u0000..uFFFF=0.. 65535; символ (беззнаковое 16- битное целое)● int : - 2.147483648E9.. 2.147483647E9; целое число (32- битное целое со знаком)● long : -9.22337203685478E18.. 9.22337203685478E18; длинное целое (64- битное целое со знаком)
  • 4. Целые типы, переменные, константы● Для задания в тексте программы численных литерных констант типа long, выходящих за пределы диапазона чисел типа int, после написания числа следует ставить постфикс – букву L или l.● Константами называются именованные ячейки памяти с неизменяемым содержимым. Объявление констант осуществляется в классе, при этом перед именем типа константы ставится комбинация зарезервированных слов public и final.
  • 5. Основные операторы для работы с целочисленными величинами I● + Оператор сложения i+j● – Оператор вычитания i-j● * Оператор умножения i*j● / Оператор деления i/j● % Оператор остатка от целочисленного деления i%j
  • 6. Основные операторы для работы с целочисленными величинами II● = Присваивание v=i● ++ Инкремент (увеличение на 1) v++● -- Декремент (уменьшения на 1) v- -● += v+=i● -= v-=i● *= v*=i● /= v/=i● %= v%=i
  • 7. Вещественные типы● float 4 байта1.5*E-45..3.4E38 “Одинарная” точность, 7-8 значащих десятичных цифр мантиссы. Тип real*4 стандарта IEEE754● double 8 байт 5E-324..1.7E308 “Двойная” точность, 15..16 значащих цифр мантиссы. Тип real*8 стандарта IEEE754
  • 8. Функции класса Math● Математические функции, а также константы “пи” (Math.PI) и “е” (Math.E ) заданы в классе Math, находящемся в пакете java.lang .● sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), atan2(y, x), toRadians(angdeg), toDegrees(angrad)● exp(x), expm1(x), log(x), log10(x), log1p(x), sqrt(x), cbrt(x), hypot(x,y), pow(x, y), sinh(x), cosh(x), tanh(x)
  • 9. Функции класса Math● abs(m), abs(x), signum(a), signum(x), min(m,n), min(x,y), max(m,n), max(x,y)● ceil(x), floor(x), round(a), round(x), rint(x), ulp(a), ulp(x)● random()● IEEEremainder(x,y)
  • 10. Правила преобразования типа● Целочисленные вычисления проводятся на аппаратном уровне только с величинами типа int или long. Величины типа byte, short или char сначала преобразуются в int, после чего производится их подстановка в качестве операндов. Если один из операндов типа long, другой целочисленный операнд автоматически преобразуется к этому типу, и действия производятся с числами типа long.● Если один из операндов типа double, а другой float, значение float автоматически преобразуется к типу double, и действия производятся с числами типа double.● Если один из операндов целочисленный, а другой вещественный, сначала идёт преобразование целочисленного операнда к такому же вещественному типу, а потом выполняется оператор.
  • 11. Оболочечные классы● Каждому примитивному типу сопоставляется оболочечный класс. В общем случае они имеют те же имена, что и примитивные типы, но начинающиеся не со строчной, а с заглавной буквы. Исключение составляют типы int и char, для которых имена оболочечных классов Integer и Character.● Основное назначение оболочечных классов – создание объектов, являющихся оболочками над значениями примитивных типов. Процесс создание такого объекта (“коробки” - box) из значения примитивного типа называется упаковкой (boxing), а обратное преобразование из объекта в величину примитивного типа – распаковкой (unboxing). Упаковка и распаковка для числовых классов осуществляется автоматически.● Константы и методы : Integer.MIN_VALUE, Integer.MAX_VALUE, Float.MIN_VALUE , Float.MAX_VALUE, Double.MIN_VALUE , Double.MAX_VALUE, Integer.parseInt(строка), Long.parseLong(строка), Float.parseFloat(строка), Double.parseDouble(строка) и т.п.
  • 12. Приоритет операторов● В Java имеется 15 уровней приоритета операторов. В хорошо написанной программе ставятся скобки, повышающие читаемость программы, даже если они не нужны с точки зрения таблицы приоритетов.● 1высший Постфиксные; 2 Унарные; 3 Создания объектов и преобразования типа; 4 Мультипликатив-ные; 5 Аддитивные; 6 Сдвиги битов; 7 Отношения; 8 Эквивалентности; 9 Побитовое И; 10 Побитовое исключающее ИЛИ; 11Побитовое ИЛИ; 12 Логическое И; 13Логическое ИЛИ; 14 Условный; 15низший Присваивания
  • 13. Перечисления● Иногда требуется использовать элементы, которые не являются ни числами, ни строками, но ведут себя как имена элементов и одновременно обладают порядковыми номерами. Например, названия месяцев или дней недели. В этих случаях используют перечисления.● Пример задания типа: enum Spring { march, apr, may };● Доступ к элементу перечисления осуществляется с квалификацией именем типа-перечисления: ИмяТипа.имяЭлемента . Пример: Spring.March● Задание переменных: Spring spr1=Spring.apr, spr2;

×