Java: План и дорожная карта развития + СОДЕРЖАНИЕ.
статья №4 Java: переменные и примитивные типы данных.
Приветствую Тебя, мой дорогой друг. Если ты учился в школе, то понимаешь что такое арифметические операции, а значит использовать их в Java определенно сможешь, а если нет, GO не в CS, а ГО в школу=).
1. Начнем с операции сложения: объявим две переменные(x и y) и сразу их проинициализируем, после чего результат сложения присвоим третьей переменной(z). Все просто, ничего сложного, двигаемся дальше.
2. Операция вычитания: то же самое что и в предыдущем примере, только результат уменьшится, опять же все просто. Дальше.
3. Операция умножения: и опять ничего интересного, увеличили в несколько раз и рады результату, мать его ДАЛЬШЕ.
4. Операция деления: а вот деление поинтересней. Уже наверно посмотрел пример и задался вопросом: "Почему единица, а не одна целая пять десятых"? Разберемся. На картинке видим что переменные имею целочисленный тип данных "int", в этом и фишка, "Java" просто откидывает дробную часть, результат от операции единица, то есть приводит к целому числу. Но как же добиться 1.5?
Хм, давайте попробуем переменной "z"изменить с целочисленного на вещественный тип "double", так-то я думаю логично=).
Но "Java", так не думает, а думает она так, если в делении участвую целые числа, то результат должен быть целочисленный в не зависимости от того что результирующая переменная будет вещественного типа. Ну, хорошо. Хм, значит давайте всем переменным поменяем на вещественный тип "double" и посмотрим что из этого получится.
Ха!Получилось! Ура, ура, ура! Так, а если программа большая и мы не можем просто так брать и менять типы. Что же в таком случае делать? Определимся, результат точно должен быть вещественным, с этим не поспорить, а вот что бы он получился таковым, необходимо всего лишь один вещественный операнд. Попробуем умножить один из операндов на "1.0", к примеру "x", тем самым преобразовать из целого числа в число с плавающей точкой.
И у нас снова получилось=). Но как то не красиво смотрится. А как же сделать покрасивше? Java дает возможность изменения типа данных непосредственно во время действия, та скажем на лету. Для того чтобы должны преобразовать целочисленный тип в вещественный, перед операндом "x" должны поставить "(double)" да, да именно в скобочках. Об преобразовании типов поговорим в ближайшей статье.
Вооот, теперь другое дело. Таким образом мы из операнда "х" со значение 6 преобразовали в значение 6.0. Получили правильный результат 1.5.
5. Еще одна интересная операция, деление по модулю: и так что мы видим, разделив по модулю ("x" % "y") с какого-то лешего получилось 2.0. Почему так получилось? А вот почему, 6 на 4 без остатка не делится, значит нужно найти такое число, чтобы могло поделиться, в данном случае такое число 4, то есть вместо 6 ставим 4 и получается 4 деленное на 4 получится 1 без дробной части, после того как мы нашли такое число, необходимо от 6 отнять наше найденное число 4 и в результате получаем остаток, который равен 2.
Другой пример: 16 на 5 без остатка не делится, находим число 15, на 5 делится, следовательно 16 - 15 = 1. Как-то так.
А это, нужно будет запомнить, если второй операнд больше первого, то ответ будет равен первому операнду. Пример: 5 % 15 = 5.
Если первый операнд отрицательный, то и результат будет так же отрицательный. Результат будет отрицательный и при двух отрицательных операндах.
Это арифметическое действие "%", очень нам пригодится при решении некоторых интересных задач.
6. ++Префиксный инкремент: увеличение на единицу, перед выполнением действия. То есть, данная арифметическая операция, перед тем как "x" отдаст свое значение переменной "y", ++инкремент увеличит значение ровно на единицу, более длинная запись x = x + 1; y = x;.
7. Постфиксный инкремент++: увеличение на единицу, после выполнения действия. Примерно как предыдущая арифметическая операция, но чуть другая, в начале "x" отдаст свое значение переменной "y", а после инкремент++ увеличит свое значение ровно на единицу, аналогичная запись y = x; x = x + 1; Поэтому "x" вернул 5, а после увеличился до 6.
8. --Префиксный декремент: уменьшение на единицу, перед выполнением действия. Данная операция, перед тем как "x" отдаст свое значение переменной "y" --декремент уменьшит значение ровно на единицу, более длинная запись x = x - 1; y = x;.
9. Постфиксный декремент--: уменьшение на единицу, после выполнения действия. Арифметическая операция, в начале "x" отдаст свое значение переменной "y", а после декремент-- уменьшит свое значение ровно на единицу, аналогичная запись y = x; x = x - 1; Поэтому "x" вернул 5, а после уменьшился до 4.
Закончили с арифметическими действиями, ближайшие статьи: константы, порядок выполнения арифметических действий, преобразование типов.
До встречи в следующей статье, потренируйся самостоятельно с арифметическими действиями.
статья №6 Java: Приоритет арифметических операций и операторы присвоения.
Поставь лайк если понравилась статья, тебе всего лишь "клик", а мне радости полные штаны =). Подписывайся на канал, будет много интересных публикаций =).