Сокращённые присваивания
Часть раздела Основы путешествия по Dart на Coddy — урок 20 из 94.
В Dart сокращения присваивания сочетают арифметические операторы с присваиванием для краткого изменения переменных.
1. Присваивание с прибавлением (+=)
void main() {
int score = 10;
score += 5; // Эквивалентно: score = score + 5;
print('Score after adding 5: $score');
}2. Вычитание с присваиванием (-=)
void main() {
int lives = 3;
lives -= 1; // Эквивалентно: lives = lives - 1;
print('Lives after losing 1: $lives');
}3. Умножение с присваиванием (*=)
void main() {
int points = 5;
points *= 2; // Эквивалентно: points = points * 2;
print('Points after doubling: $points');
}4. Присваивание с делением (/=)
void main() {
double price = 100.0;
price /= 2; // Equivalent to: price = price / 2;
print('Price after 50% discount: $price');
}Задание
ЛегкоСоздайте программу, которая отслеживает статистику игрока в игре с использованием составных операторов присваивания:
- Объявите целочисленную переменную
scoreс начальным значением 100 - Объявите целочисленную переменную
bonusс начальным значением 50 - Объявите целочисленную переменную
multiplierс начальным значением 2 - Объявите целочисленную переменную
penaltyс начальным значением 30 - Выведите начальный счет с сообщением:
Initial score: 100 - Используйте оператор
+=для добавления бонуса к счету - Выведите счет после добавления бонуса:
Score after bonus: 150 - Используйте оператор
*=для умножения счета на множитель - Выведите счет после применения множителя:
Score after multiplier: 300 - Используйте оператор
-=для вычитания штрафа из счета - Выведите окончательный счет:
Final score: 270
Ваш вывод должен точно соответствовать формату, показанному выше.
Шпаргалка
Составные операторы присваивания объединяют арифметические операторы с присваиванием для краткого изменения переменных:
Сложение с присваиванием (+=)
score += 5; // Equivalent to: score = score + 5;Вычитание с присваиванием (-=)
lives -= 1; // Equivalent to: lives = lives - 1;Умножение с присваиванием (*=)
points *= 2; // Equivalent to: points = points * 2;Деление с присваиванием (/=)
price /= 2; // Equivalent to: price = price / 2;Попробуйте сами
void main() {
// Объявляйте свои переменные здесь
int score = ?;
int bonus = ?;
int multiplier = ?;
int penalty = ?;
// Вывод начального счёта
print("Initial score: $score");
// Добавить бонус с использованием оператора +=
score ? bonus;
// Вывод счёта после бонуса
print("Score after bonus: $score");
// Применить множитель с использованием оператора *=
score ? multiplier;
// Вывод счёта после множителя
print("Score after multiplier: $score");
// Вычесть штраф с использованием оператора -=
score ? penalty;
// Вывод финального счёта
print("Final score: $score");
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы, часть 2
Операторы сравненияЛогический ANDЛогический ORЛогический NOTОператоры проверки типаПовторение - Сравнения7Работа со строками
Конкатенация строкИнтерполяция строкМногострочные строкиСвойства строкОсновные методы строк10Коллекции - Основы словарей
Что такое словари?Создание словаряДоступ к значениям по ключуПары ключ-значениеПолучение размера словаряПолучение ключейПолучение значенийПроверка существования ключа2Переменные и основные типы данных
Что такое переменные?СтрокиЦелые числа (int)Вещественные числа (double)Булевы значения (bool)Вывод типов с 'var'Финальные переменныеКонстантные переменныеСоглашения об именованииОсновы null-безопасностиПовторение - Объявление переменных8Поток управления - Циклы
Цикл 'for'Цикл 'while'Цикл 'do-while'Использование 'break' в циклахИспользование 'continue' в циклахИтог - Повторение кода3Операторы. Часть 1
Арифметические операторыЦелочисленное делениеОператор модуляИнкремент и декрементСокращённые присваиванияИтог - Простые вычисления6Управление потоком - Принятие решений
Оператор 'if'Оператор 'else'Оператор 'else if'Повторение - Простые решенияВложенные операторы 'if'Оператор 'switch'9Коллекции - Основы списков
Что такое списки?Создание спискаДоступ по индексуПолучение длины спискаДобавление элементовУдаление элементовПроверка, пуст ли списокИтерация по списку12Расширенные функции
Необязательные позиционные параметрыИменованные параметрыОбязательные именованные параметрыЗначения параметров по умолчаниюПовторение - Параметры функций15Проект: Простой калькулятор
НастройкаОбъявление числа