Введение в Java: Первое знакомство с миром программирования
Привет, будущий программист! Сегодня мы начинаем наше увлекательное путешествие в мир Java. Представь, что ты учишься разговаривать на новом языке — языке компьютеров. Как и в любом языке, у нас будут свои слова (команды), грамматика (правила написания кода) и даже свои шутки (комментарии в коде).
Java — это один из самых популярных языков программирования в мире. На нём написаны:
- Мобильные приложения для Android (твои любимые игры!)
- Серверы крупных сайтов (например, Amazon, LinkedIn)
- Программы для банкоматов и космических аппаратов
- И даже системы управления роботами!
Почему Java так популярен? Представь, что ты написал программу на своём компьютере. С Java она будет работать на любом другом компьютере, телефоне или даже холодильнике с умной начинкой! Это как если бы ты написал письмо на русском, и его поняли бы во всём мире без перевода.
Что такое программа?
Программа — это набор инструкций для компьютера. Как рецепт пиццы: сначала берём тесто, потом добавляем соус, сыр, колбасу... Только вместо продуктов у нас команды, а вместо пиццы — работающая программа.
Вот как выглядит самая простая программа на Java:
// Это комментарий. Компьютер его игнорирует, он нужен для людей
public class MyFirstProgram { // Объявляем класс программы
public static void main(String[] args) { // Главный метод, с которого всё начинается
System.out.println("Привет, мир!"); // Выводим текст на экран
}
}
Давай разберём каждую строчку, как конструктор Лего:
- public class MyFirstProgram — создаём коробку (класс) с именем MyFirstProgram. В этой коробке будут храниться все наши инструкции.
- public static void main(String[] args) — это как кнопка "ВКЛ" на пульте. Когда программа запускается, она ищет эту кнопку и начинает выполнять команды внутри неё.
- System.out.println — команда "НАПЕЧАТАЙ". Всё, что в скобках, появится на экране.
- "; — точка с запятой в конце каждой команды. Как точка в конце предложения.
Переменные: коробки для данных
Представь, что у тебя есть коробки разных размеров. В маленькую коробку помещается только одно число, в среднюю — слово, а в большую — целый список. В программировании такие коробки называются переменными.
У каждой переменной есть три характеристики:
- Имя — как наклейка на коробке (например, "мойВозраст")
- Тип — что можно хранить (числа, буквы, правда/ложь)
- Значение — что внутри коробки (например, 15)
В Java есть несколько основных типов переменных:
| Тип | Что хранит | Пример |
|---|---|---|
int |
Целые числа | 5, -3, 1000 |
double |
Дробные числа | 3.14, -0.5, 2.718 |
String |
Текст (слова) | "Привет", "Java", "123" |
boolean |
Правда или ложь | true, false |
Вот как создавать переменные:
public class VariablesExample {
public static void main(String[] args) {
// Создаём переменную с именем age (возраст) типа int
int age; // Пока коробка пустая
age = 15; // Кладём значение 15 в коробку
// Можно сразу создать и заполнить
String name = "Анна"; // Текст всегда в кавычках
double height = 1.65; // Дробная часть через точку
boolean isStudent = true; // Правда или ложь
// Выводим значения на экран
System.out.println("Имя: " + name);
System.out.println("Возраст: " + age);
System.out.println("Рост: " + height + " м");
System.out.println("Ученик: " + isStudent);
// Меняем значение переменной
age = 16; // Теперь возраст стал 16
System.out.println("Через год возраст: " + age);
}
}
Правила именования переменных
Чтобы другие программисты (и ты сам через неделю) понимали твой код, нужно соблюдать правила:
- Имя должно быть понятным:
studentAgeлучше, чемsa - Начинается с маленькой буквы:
myName, а неMyName - Каждое новое слово с большой буквы:
myFavoriteColor(это называется camelCase — верблюжья нотация) - Только буквы, цифры и подчёркивание:
user_nameможно,user-nameнельзя - Цифры не в начале:
var1можно,1varнельзя
Арифметические операции
Компьютер — это калькулятор на стероидах. Он может выполнять все математические операции мгновенно:
public class MathOperations {
public static void main(String[] args) {
int a = 10;
int b = 3;
// Сложение
int sum = a + b;
System.out.println(a + " + " + b + " = " + sum);
// Вычитание
int difference = a - b;
System.out.println(a + " - " + b + " = " + difference);
// Умножение
int product = a * b;
System.out.println(a + " * " + b + " = " + product);
// Деление (целочисленное)
int quotient = a / b; // Результат: 3, потому что 10 / 3 = 3 целых
System.out.println(a + " / " + b + " = " + quotient);
// Остаток от деления
int remainder = a % b; // 10 - 3*3 = 1
System.out.println(a + " % " + b + " = " + remainder);
// Деление с дробной частью
double c = 10.0;
double d = 3.0;
double division = c / d; // Результат: 3.333...
System.out.println(c + " / " + d + " = " + division);
}
}
Обрати внимание: когда мы делим целые числа (int), результат тоже целый. Остаток от деления — это то, что не поместилось. Например, 10 яблок разделить на 3 друзей — каждый получит по 3 яблока (quotient), и 1 яблоко останется (remainder).
Конкатенация строк (склеивание текста)
Строки можно соединять друг с другом и с числами. Это называется конкатенация:
public class StringConcat {
public static void main(String[] args) {
String greeting = "Привет";
String name = "Максим";
// Склеиваем строки через +
String message = greeting + ", " + name + "!";
System.out.println(message); // Выведет: Привет, Максим!
// Можно склеивать строки и числа
int age = 14;
String info = "Тебе " + age + " лет";
System.out.println(info); // Выведет: Тебе 14 лет
// Обрати внимание: "5" + 5 = "55" (строка), а 5 + 5 = 10 (число)
System.out.println("5" + 5); // "55"
System.out.println(5 + 5); // 10
}
}
Ввод данных с клавиатуры
Программа становится интереснее, когда она может общаться с пользователем. Для этого используется специальный объект Scanner:
import java.util.Scanner; // Говорим Java, что будем использовать сканер
public class UserInput {
public static void main(String[] args) {
// Создаём сканер для чтения с клавиатуры
Scanner scanner = new Scanner(System.in);
System.out.println("Как тебя зовут?");
String name = scanner.nextLine(); // Читаем строку
System.out.println("Сколько тебе лет?");
int age = scanner.nextInt(); // Читаем число
System.out.println("Привет, " + name + "!");
System.out.println("Через 5 лет тебе будет " + (age + 5) + " лет.");
// Важно закрыть сканер после использования
scanner.close();
}
}
Разберём, что здесь происходит:
import java.util.Scanner;— импорт класса Scanner (как библиотека книг)Scanner scanner = new Scanner(System.in);— создаём объект scanner, который будет читать из системного ввода (клавиатуры)scanner.nextLine()— ждёт, пока пользователь введёт текст и нажмёт Enterscanner.nextInt()— ждёт ввода целого числаscanner.close()— закрываем сканер (как закрываем книгу после чтения)
Условные операторы if-else
В жизни мы постоянно принимаем решения: "Если дождь, беру зонт, иначе — иду без зонта". В Java тоже есть такие конструкции:
import java.util.Scanner;
public class ConditionalExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Введите свой возраст:");
int age = scanner.nextInt();
// Проверяем условие
if (age >= 18) {
System.out.println("Ты совершеннолетний!");
} else {
System.out.println("Ты ещё несовершеннолетний.");
}
// Можно проверять несколько условий
System.out.println("Введите оценку (от 1 до 5):");
int grade = scanner.nextInt();
if (grade == 5) {
System.out.println("Отлично! Ты молодец!");
} else if (grade == 4) {
System.out.println("Хорошо, но можно лучше.");
} else if (grade == 3) {
System.out.println("Удовлетворительно, нужно подтянуть.");
} else {
System.out.println("Плохо, нужно больше заниматься.");
}
scanner.close();
}
}
Операторы сравнения, которые мы используем:
==— равно (внимание: два знака равно!)!=— не равно>— больше<— меньше>=— больше или равно<=— меньше или равно
Логические операторы
Иногда нужно проверить несколько условий одновременно:
import java.util.Scanner;
public class LogicalOperators {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Введите температуру на улице:");
int temperature = scanner.nextInt();
// && - И (оба условия должны быть истинны)
if (temperature > 0 && temperature < 30) {
System.out.println("На улице комфортно!");
}
// || - ИЛИ (хотя бы одно условие истинно)
if (temperature < -10 || temperature > 35) {
System.out.println("Лучше остаться дома!");
}
// ! - НЕ (отрицание)
boolean isRaining = false;
if (!isRaining) {
System.out.println("Можно идти гулять, дождя нет.");
}
scanner.close();
}
}
Комментарии в коде
Комментарии — это заметки для себя и других программистов. Компьютер их игнорирует, но они очень помогают понимать код:
public class CommentsExample {
public static void main(String[] args) {
// Однострочный комментарий - начинается с двух слешей
/*
* Многострочный комментарий
* Можно писать на нескольких строках
* Удобно для подробных объяснений
*/
/**
* Javadoc комментарий - специальный комментарий
* для создания документации
*/
System.out.println("Комментарии не влияют на работу программы!");
}
}
Частые ошибки новичков
Вот что чаще всего идёт не так у начинающих программистов:
- Забыл точку с запятой — каждая команда должна заканчиваться ;
- Неправильные кавычки — строки только в двойных кавычках " "
- Путаница с = и == — = присваивает значение, == сравнивает
- Не закрыл фигурные скобки — каждой { должна соответствовать }
- Имена переменных с большой буквы — классы с большой, переменные с маленькой
- Забыл импортировать Scanner — без import java.util.Scanner; он не работает
Практические задания
Теперь твоя очередь! Попробуй решить эти задачи самостоятельно. Не бойся ошибаться — ошибки это часть обучения.
Задание 1: Калькулятор возраста
Напиши программу, которая:
- Спрашивает у пользователя год рождения
- Вычисляет его возраст (текущий год — 2025)
- Выводит: "Тебе X лет. Через 10 лет будет Y лет."
// Подсказка: начни так
import java.util.Scanner;
public class AgeCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// ... твой код здесь
scanner.close();
}
}
Задание 2: Проверка пароля
Создай программу, которая:
- Запрашивает у пользователя пароль
- Если пароль равен "java123", выводит "Доступ разрешён!"
- Иначе выводит "Неверный пароль!"
- Дополнительно: если пароль короче 5 символов, выводит "Слишком короткий пароль"
Задание 3: Конвертер валют
Напиши программу для конвертации рублей в доллары:
- Спрашивает сумму в рублях
- Спрашивает курс доллара (например, 90.5)
- Вычисляет сумму в долларах (рубли / курс)
- Выводит: "X рублей = Y долларов"
- Если сумма больше 1000 долларов, добавить "Это крупная сумма!"
Совет: Не пытайся написать всю программу сразу. Разбей задачу на маленькие шаги:
- Сначала добейся, чтобы программа просто что-то выводила
- Потом добавь ввод данных
- Потом вычисления
- И только потом условия
Поздравляю! Ты сделал первый шаг в мир Java. В следующем уроке мы узнаем о циклах (как заставить компьютер повторять действия), массивах (как хранить много данных) и создании своих методов (как не повторять один и тот же код).
Помни: каждый великий программист начинал с "Привет, мир!". Практикуйся каждый день хотя бы по 30 минут, и скоро ты будешь писать свои собственные игры и приложения!