Неделя 1: Основы синтаксиса, переменные, типы данных и управляющие конструкции
Неделя 1: Основы синтаксиса, переменные, типы данных и управляющие конструкции
Добро пожаловать на курс «Java за 30 дней». Вы сделали отличный выбор. Java — это не просто язык программирования, это фундамент корпоративной разработки, мобильных приложений (Android) и серверных решений. Это язык со строгой статической типизацией, что означает, что он не позволит вам совершить многие глупые ошибки, которые возможны в других языках.
Наша цель на эту неделю — перестать бояться кода, понять, как «думает» Java, и написать свои первые работающие программы. Мы разберем анатомию приложения, узнаем, где хранятся данные и как управлять ходом выполнения программы.
Анатомия Java-программы
Любая программа на Java состоит из классов. Представьте, что класс — это чертеж или инструкция. Внутри классов живут методы (функции), которые содержат набор команд.
Самый главный метод, с которого начинается выполнение любой программы — это метод main.
Посмотрим на классический пример:
public class FirstApp {
public static void main(String[] args) {
System.out.println("Привет, мир!");
}
}
Разберем каждую строчку:
public class FirstApp— мы объявляем класс с именемFirstApp. В Java имя файла обязано совпадать с именем публичного класса.public static void main(String[] args)— это точка входа. Без этого метода программа просто не запустится.System.out.println(...)— команда вывода текста в консоль.
Переменные и Типы данных
Программа должна обрабатывать данные. Чтобы сохранить данные в памяти, мы используем переменные. Переменная — это именованная область памяти, «коробка», в которую мы кладем значение.
Так как Java — язык со строгой типизацией, вы не можете положить слона в коробку из-под спичек. Вы должны заранее сказать, какой тип данных будет храниться в переменной.
Примитивные типы данных
В Java существует 8 примитивных типов данных. Они хранят простые значения и занимают фиксированное место в памяти. Мы сосредоточимся на самых используемых:
| Тип | Что хранит | Пример |
|---|---|---|
int |
Целые числа | int age = 25; |
double |
Дробные числа | double price = 19.99; |
boolean |
Истина или ложь | boolean isJavaFun = true; |
char |
Один символ | char grade = 'A'; |
Остальные (byte, short, long, float) используются реже, в специфических ситуациях.
Ссылочные типы данных
Самый популярный ссылочный тип — это String (строка). Строка — это не примитив, это полноценный объект.
String name = "Алекс";
Важно: Примитивы пишутся с маленькой буквы (
int), а ссылочные типы (классы) — с большой (String).
Математические операции
Программирование неразрывно связано с математикой. В Java доступны стандартные операторы: +, -, *, / (деление), % (остаток от деления).
Рассмотрим пример вычисления индекса массы тела (ИМТ). Формула выглядит так:
Где — индекс массы тела, — масса тела в килограммах, — рост в метрах.
В коде это будет выглядеть так:
double weight = 70.5;
double height = 1.75;
double bmi = weight / (height * height);
System.out.println(bmi);
Управляющие конструкции
Код не всегда выполняется линейно сверху вниз. Иногда нам нужно принимать решения или повторять действия.
Условный оператор if-else
Этот оператор позволяет программе «думать». Если условие истинно — делаем одно, иначе — другое.
int score = 85;
if (score >= 90) {
System.out.println("Отлично!");
} else if (score >= 75) {
System.out.println("Хорошо");
} else {
System.out.println("Нужно подучить");
}
Логические операторы
Часто нужно проверить несколько условий сразу. Для этого используются логические операторы:
&&(И) — истина, только если оба условия верны.||(ИЛИ) — истина, если хотя бы одно условие верно.!(НЕ) — меняет значение на противоположное.
Пример логики:
Где — результат (true/false), и — переменные, — логическое «И» (в Java это &&). Если и , то результат будет true.
Циклы (Loops)
Циклы позволяют выполнять блок кода многократно. Это спасает нас от дублирования кода.
Цикл while
Выполняется, пока условие истинно.
int count = 0;
while (count < 5) {
System.out.println("Счетчик: " + count);
count++; // Увеличиваем на 1
}
Цикл for
Самый популярный цикл. Идеален, когда мы знаем, сколько раз нужно повторить действие.
for (int i = 0; i < 5; i++) {
System.out.println("Итерация №" + i);
}
Синтаксис for состоит из трех частей:
- Инициализация (
int i = 0): выполняется один раз перед началом. - Условие (
i < 5): проверяется перед каждой итерацией. - Обновление (
i++): выполняется после каждой итерации.
Практическое задание недели
Чтобы закрепить материал, попробуйте написать простую программу «Калькулятор скидок» в вашей IDE.
- Создайте переменную
price(цена товара). - Создайте переменную
isRegularCustomer(постоянный клиент, тип boolean). - Если клиент постоянный, дайте скидку 10%.
- Если цена выше 1000, дайте дополнительную скидку 5%.
- Выведите итоговую цену.
Заключение
На этой неделе мы заложили фундамент. Вы узнали, что такое переменные, как Java работает с типами данных и как управлять потоком выполнения программы. Это база, без которой невозможно написать даже простейшее приложение.
На следующей неделе мы углубимся в объектно-ориентированное программирование (ООП) — сердце Java. Мы узнаем, что такое объекты, наследование и полиморфизм.
Готовы проверить свои знания? Переходите к заданиям ниже.