Вы находитесь на странице: 1из 8

Лекция: Переменные и Типы Данных в Java

Java - это простой, объектно-ориентированный и высокоэффективный язык


программирования. Одним из важных аспектов программирования на Java является
работа с переменными и типами данных. Переменные - это контейнеры, в которых вы
можете хранить данные. В Java существует несколько основных типов данных, которые
позволяют вам хранить различные виды информации.

Переменные в Java

Переменная в Java - это идентификатор, связанный с определенным значением. И


является хранилищем данных. В переменной можно хранить какое-то значение (например,
число, строку или другой тип данных).

Вот как объявляется переменная в Java:

public class Main{


public static void main(String[] args) {

int age = 20;

}
}

Где int – тип данных,


age – переменная,
20 – значение перменной.

Основные Типы Данных

Java имеет несколько встроенных типов данных. Вот некоторые из наиболее часто
используемых:

int: Для целых чисел.


Пример:
int age = 30;

double: Для чисел с плавающей точкой (дробных чисел).


Пример:
double price = 19.99;

boolean: Для логических значений (истина/ложь).


Пример:
boolean isJavaFun = true;

char: Для хранения одиночных символов.


Пример:
char grade = 'A';
String: Для хранения текстовых данных (строк).
Пример:
String name = "John";

byte, short, long: Для целых чисел с разной длиной в битах.

Давайте рассмотрим первый простой пример программы на Java:

public class Main{


public static void main(String[] args) {
int a = 10;
int b = 20;
System.out.println(a+b);
}
}

При запуске данного кода, мы создаем два числа, a и b, которые равны 10 и 20


соответственно. Затем, выводим их сумму (a+b), которая равняется 30.

Если разобрать программу, которую мы написали выше, то мы видим что она начинается с
ключевого слова "public class Main", что означает что я создаю класс, под названием Main.

Далее, мы видим что открываются фигурные скобки "{", что означает - мы открываем блок,
то есть некую границу класса Main. Причем очень важно, чтобы эта фигурная скобка
закрывалась в конце.

Внутри класса, мы создаем основной метод(функция), строкой кода - "public static void
main(String []args)". Данный код создает главный метод(функция) класса. Таким образом
программа при запуске начинает работать именно оттуда. А мы получается пишем свой
алгоритм именно внутри этого метода(функции).

Команда System.out.println(a+b); выводит в консоль сумму этих двух чисел.

В принципе, мы уже ознакомились с написанием корректной программы на языке Java.


Теперь, мы можем далее рассмотреть следующие примеры.

public class Main{


public static void main(String[] args) {
double x = 3.4;
double y = 4.5;
double sum = x+y;
System.out.println("Result is: "+sum);
}}
Результатом кода будет:

Result is: 7.9

В чем разница этого кода от предыдущего? Во первых, мы создали уже не целое число, а
дробное переменное, точнее double. И мы не сможем в тип данных, который принимает
только целые числа, добавить дробное число. Каждый тип данных предназначен для
определенного типа значения.

Думаю, и тут мы с вами все разобрали. Теперь идем дальше.

public class Main{


public static void main(String[] args) {
String name = "Anakin";
String surname = "Skywalker";
String city = "Almaty";
String sentence = "I am " + name + " " + surname + " from "+city;

System.out.println(sentence);
}
}
Результатом кода будет:

I am Anakin Skywalker from Almaty

В этом примере, мы создаем три переменных типа текста. Обратите внимание что текст
или мы называем это строкой, начинается с двойных кавычек" и заканчивается точно
также. Это правило очень важно соблюдать, иначе компилятор выбросит ошибку.

Теперь возникает вопрос, а всегда ли нам надо объявлять значение переменных в начале,
именно в коде. А вдруг мы захотим вводить их произвольно? Решением такой задачи
является подключение готовой библиотеки java.util. Данная библиотека содержит готовый
класс - Scanner, которая поможет нам считать данные прямо с консоли.

Давайте изменим первый пример, где мы просто складываем две целых чисел:

import java.util.Scanner;

public class Main{


public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int a = in.nextInt();
int b = in.nextInt();
System.out.println(a+b);
}
}

При запуске программы, консоль будет требовать с нас ввести две целых чисел, значения
переменных a и b. Если мы введем 5 и 7, то в итоге получим 12.
Как вы заметили, мы добавили код: import java.util.Scanner; что означает - импортирование
готового класса Scanner, из библиотеки java.util. Далее, внутри главного метода, мы
создаем объект класса Scanner(называем его in), для сканирования чисел с консоли. Код
in.nextInt() помогает нам считать именно целое число типа int с консоли. Таким образом,
именно из за кода in.nextInt() программа замирает в ожидании, и ждет нас пока мы по
очереди не введем значения для целых чисел a и b. Также можно и ввести дробные числа
произвольно, прямо из консоли:

import java.util.Scanner;

public class Main{


public static void main(String[] args) {
Scanner in = new Scanner(System.in);
double x = in.nextDouble();
double y = in.nextDouble();
double sum = x+y;

System.out.println("Result is: "+sum);


}
}

При запуске программы, консоль будет требовать с нас ввести две дробных чисел,
значения переменных x и y. Если мы ведем 2.2 и 4.5, то в итоге получим:

Результатом кода будет:

Result is: 6.7

Единственное, чем отличается ввод дробных чисел от целых, это названиями методов:
вмести in.nextInt(); мы пишем in.nextDouble();

Для считывания строк(текста) мы пишем in.next(); как показано ниже в примере:

import java.util.Scanner;

public class Main{


public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String name = in.next();
String surname = in.next();
String city = in.next();
String sentence = "I am " + name + " " + surname + " from "+city;

System.out.println(sentence);
}
}

Если ввести с консоли текст: Cate Blanchett Aktobe, то результатом кода будет:

I am Cate Blanchett from Aktobe

В принципе мы можем идти дальше. А теперь, давайте быстренько пройдемся по


основным операторам, которые мы будем использовать в наших программах:
Оператор Описание Пример

+ Оператор сложения int a = 10; int b = 20; int sum = a+b;

- Оператор вычитания int a = 20; int b = 15; int diff = a-b;

* Оператор умножения int a = 10; int b = 5; int diff = a*b;

/ Оператор деления int a = 50; int b = 5; int div = 50/5;

% Оператор остатка int a = 21; int b = 6; int rem = a%b; будет 3

У вас наверное возник вопрос по поводу оператора остатка. Данный оператор выдает
неделимый остаток двух чисел. То есть, например, если мы будем делить 30 на 7, то у нас
получится 4 целых и 2 остатка и ответом будет: 2.

Например, 40%5 будет 0, так как 40/5 это 8 без остатка, соответственно это 0.

Примеры:

1) Напишите программу, в которой я ввожу число, выведите в консоли квадрат и куб


этого числа.

Ввод:

Вывод:

Решение:

import java.util.Scanner;

public class Main{


public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int a = in.nextInt();
System.out.println(a*a);
System.out.println(a*a*a);
}
}

Или использовать метод Math.pow()

import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int a = in.nextInt();
System.out.println((int)Math.pow(a,2));
System.out.println((int)Math.pow(a,3));
}
}
Math.pow - это метод в языке программирования Java, который используется для
возведения числа в степень. Он принимает два аргумента: число, которое нужно возвести
в степень, и саму степень.

Обратите внимание, что Math.pow работает с числами с плавающей точкой (double), и


результат также является числом с плавающей точкой. Чтобы вывод был целым числом
мы перед методом открываем скобки и вставляем тип данных int.

2)Напишите программу, которая принимает с консоли значение в рублях и выводит


в тенге. (Курс: 1 рубль = 6 тенге)

Ввод:

1000

Вывод:

6000

Решение:

import java.util.Scanner;

public class Main{


public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int a = in.nextInt();
System.out.println(a*6);
}
}

3) Дано двузначное число. Вывести вначале его левую цифру (десятки), а затем - его
правую цифру (единицы). Для нахождения десятков использовать операцию
деления нацело, для нахождения единиц - операцию взятия остатка от деления.

Ввод:

41

Вывод:
4

Ввод:

95

Вывод:

Решение:

import java.util.Scanner;

public class Main{


public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int a = in.nextInt();
System.out.println(a/10);
System.out.println(a%10);
}
}

4) С начала суток прошло n секунд (n - целое число). Найти количество секунд,


прошедших с начала последней минуты.

Ввод:

72

Вывод:

12

Ввод:

4350

Вывод:

30

Решение:

import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner in = new Scanner(System.in);

int sec = in.nextInt();

int secInLastMinute = sec % 60;

System.out.println("Секунд с начала последней минуты: " + secInLastMinute);


}
}

Вам также может понравиться