Алексей Васильев - Java для всех
Название: | Java для всех | |
Автор: | Алексей Васильев | |
Жанр: | Java, Java Script | |
Изадано в серии: | Библиотека программиста | |
Издательство: | Питер | |
Год издания: | 2020 | |
ISBN: | 97854461113828 | |
Отзывы: | Комментировать | |
Рейтинг: | ||
Поделись книгой с друзьями! Помощь сайту: донат на оплату сервера |
Краткое содержание книги "Java для всех"
Java — один из самых популярных и востребованных языков в мире. Алексей Васильев — автор многочисленных компьютерных бестселлеров познакомит вас со всем необходимым для эффективной работы с этим языком. Вы изучите базовые типы, управляющие инструкции, особенности описания классов и объектов в Java, создание интерфейсов, лямбда-выражения, обобщенные классы. Каждая глава содержит примеры кода, которые в свою очередь снабжены как построчными пояснениями, т ак и подробным разбором примера программы. Примеры, используемые в этой книге, пригодятся вам в дальнейшей работе с языком Java. Программирование — это нестрашно! Даже если у вас нет никакого опыта, вы с легкостью освоите Java, воспользовавшись уникальной методикой Алексея Васильева, и перейдете на профессиональный уровень. 16+
Читаем онлайн "Java для всех". [Страница - 20]
переменной y) присваивается переменной x.
В табл. 1.6 приведены данные о приоритете различных операторов в Java.
Таблица 1.6. Приоритеты операторов в Java
Приоритет
Операторы
1
Круглые скобки ( ), квадратные скобки [ ] и оператор «точка»
2
Инкремент ++, декремент --, побитовая инверсия ~ и логическое отрицание !
3
Умножение *, деление / и вычисление остатка %
4
Сложение + и вычитание -
5
Побитовые сдвиги >>, >>
6
Больше >, больше или равно >=, меньше или равно t?(S1+S2)/(T-t):-1;
System.out.println("Скорость на втором участке:");
// Результат:
System.out.println(
V2t?(S1+S2)/(T-t):-1. Тернарный оператор здесь необходим исключительно с одной целью: предотвратить возможное деление на ноль
при условии, что значения переменных T и t совпадают. Если общее время движения
превышает время движения по первому участку, значение скорости автомобиля на
втором участке вычисляется по приведенной выше формуле. Если данное условие
не выполняется, то переменной V2 для скорости на втором участке присваивается
формальное отрицательное значение -1 . В зависимости от значения перемен-
Использование основных операторов 47
ной V2 либо выводится информация о вычисленном значении скорости на втором
участке, либо появляется сообщение "Это невозможно!". Мы используем команду
System.out.println(V2=c*c.
Значение равно true, если уравнение имеет решения, и false — если не имеет.
Если значение переменной state равно true, то тернарным оператором в качестве
результата возвращается числовое значение asin(c/sqrt(a*a+b*b))-alpha, где
переменной alpha предварительно присвоено значение командой alpha=asin(a/
sqrt(a*a+b*b)). В этих выражениях использованы статические методы asin()
и sqrt() из класса Math для вычисления арксинуса и квадратного корня соответственно. Таким образом, при истинном условии значением возвращается решение
уравнения. Если условие (переменная state) равно false, то результатом возвращается текст "решений нет!".
НА ЗАМЕТКУ
При разных значениях условия тернарный оператор возвращает не просто разные
значения, а значения разного типа. Но проблем в данном случае не возникает, поскольку выражение на основе тернарного оператора передано аргументом методу
println(). В этом случае результат тернарного оператора, каким бы он ни был,
автоматически преобразуется в текстовый формат.
54 Глава 1. Основы Java
Результат выполнения программы будет таким:
Результат выполнения программы (из листинга 1.9)
Уравнение a*cos(x)+b*sin(x)=c
Параметры:
a=5.0
b=3.0
c=1.0
Решение для x: -0.8580262366249893
Если поменять значения исходных параметров уравнения (переменной c присвоить
значение 10), получим следующее:
Результат выполнения программы (из листинга 1.9)
Уравнение a*cos(x)+b*sin(x)=c
Параметры:
a=5.0
b=3.0
c=10.0
Решение для x: решений нет!
Хотя использование тернарного оператора может быть достаточно эффективным,
обычно такие задачи решаются с помощью условного оператора и оператора выбора, которые описываются в следующей главе.
Кодирование символов
Рассмотрим простую иллюстративную программу, в которой для записи сразу двух
символьных значений типа char используется одна переменная целочисленного
типа int.
В программе учитывается то обстоятельство, что тип int в Java имеет размер 32 бита,
а для записи основных символов достаточно 16 бит. Таким образом, объем памяти,
выделяемой переменной типа int, достаточен для записи по меньшей мере двух
символов (значений типа char). Принцип записи символьных значений в виде
числа следующий: начальные 16 битов числа (младшие биты) будут содержать
код первого символа, а следующие 16 битов числа (старшие биты) — код второго
символа (листинг 1.10).
Листинг 1.10. Кодирование символов
class Demo{
public static void main(String args[]){
// Кодовое число:
int num;
// Исходные буквы для кодирования:
char A='А',B='ы';
// Буквы после декодирования:
Использование основных операторов 55
}
}
char X,Y;
// Вычисление кода:
num=((int)B>16);
X=(char)(num^((int)Y --">
Книги схожие с «Java для всех» по жанру, серии, автору или названию:
Ильдар Шаукатович Хабибуллин - Java 7 Жанр: Учебники и самоучители по компьютеру Год издания: 2012 Серия: В подлиннике |
Джошуа Блох - Java: эффективное программирование Жанр: Программирование: прочее Год издания: 2019 |
Ева Холланд, Крис Минник - JavaScript для "чайников" Жанр: Java, Java Script Год издания: 2017 Серия: Для «чайников» |
Скотт Чакон, Бен Штрауб - Git для профессионального программиста Жанр: Программирование: прочее Год издания: 2016 Серия: Библиотека программиста |
Другие книги из серии «Библиотека программиста»:
Эндрю Хант, Дэвид Томас - Программист-прагматик. Путь от подмастерья к мастеру Жанр: Современные российские издания Год издания: 2004 Серия: Библиотека программиста |
Митч Сеймур - Kafka Streams и ksqlDB: данные в реальном времени Жанр: Программирование: прочее Год издания: 2023 Серия: Библиотека программиста |
Алексей Васильев - Java для всех Жанр: Java, Java Script Год издания: 2020 Серия: Библиотека программиста |
Лаура Грессер, Ван Лун Кенг - Глубокое обучение с подкреплением. Теория и практика на языке Python Жанр: Python Год издания: 2022 Серия: Библиотека программиста |