Синтаксис Java. Типы данных. Примитивные типы

 

Синтаксис Java. Типы данных. Примитивные типы
Типы данных. Примитивные типы

Рассмотрим оставшиеся 4 типа: Начнём с категории Числа с плавающей точкой

  • float
  • double
Эти типы ещё называются действительные числа, или дробные числа, основное отличие, что и у целочисленных типов.
  • Тип float занимает меньше места, 4 байта и допускает меньший диапазон допустимых значений.
  • Тип double занимает больше места и допускает больший диапазон допустимых значений 8 байт.

Всё что нужно понять насчёт этих типов

  • Если нужно использовать дробные значения, то используйте один из этих типов, если нужна большая точность на нескольких знаках после запятой, то используйте double (большая точность).
  • Если точность нужна на одном двух знаках, то используйте тип float (небольшая точность).

Пользоваться ими можно точно так же как и типом int.

Решим небольшую задачу!: демонстрирующую работу с этими типами.
Необходимо написать программу в которой пишем радиус окружности, а она выводит на экран площадь круга.

Числа с плавающей точкой

Написать программу, которая принимает радиус окружности и выводит на экран площадь круга, используется формула:
S =  p i *r * r

IDE,NeProject,FloatDouble, Create New class: Square (площадь).

В этом классе мы будем считать площадь круга.

psv, что бы вычислить площадь круга, воспользуемся формулой: площадь равна pi,
r квадрат, то есть pi * радиус и ещё раз на радиус. 

Значит понадобиться три переменные, первая будет хранить радиус, пусть она будет double; 
вторая pi будет хранить значение pi, 
double pi = 3.14;
и последняя переменная площадь double s;

Радиусу присвоим значение, пусть будет не круглый а 10.8, double r = 10.8; а переменной значение присвоим формулу double s = pi * r * r; 
sout и выведем значение "Площадь круга равна " + s;
public class Square {
public static void main(String[] args) {

double r = 10.8;
double pi =3.14;
double s = pi * r * r;
System.out.println("Площадь круга равна " + s );
}
}
Run! Площадь круга равна 366.2496000000001

Исправим все double на float
 Если мы создаём дробную переменную, то она автоматически становиться типом double. Что бы указать что это тип float нужно в конце добавить букву f. 
public class Square {
public static void main(String[] args) {

float r = 10.8f;
float pi =3.14f;
float s = pi * r * r;
System.out.println("Площадь круга равна " + s );
}
Run! Площадь круга равна 366.24963 

На этом с числами с плавающей точкой закончим! Тут всё очень просто и очень схоже с int.

Домашнее задание: Написать программу, которая будет принимать значение катетов прямоугольного треугольника a и b и выводить значение гипотенузы c, в теореме Пифагора.

Типы данных. Примитивные типы
Задание не из простых*, единственная вещь которую не проходили, это как получить корень числа, посмотрим это забегая вперёд, так как методы будем проходить позже.

В стандартном пакете Java есть встроенные методы, которые написали другие программисты, среди них есть метод который пишется так: Math.sqrt(пишется число корень которого хотим получить)

Этот метод возвращает корень данного числа. Введём например 36, знаем что корень этого числа 36 это 6, и присваиваем это значение переменной double sqrt = Math.aqrt(36); и выведем значение "Корень 36 равен " + sqrt;
float r = 10.8f;
float pi =3.14f;
float s = pi * r * r;
System.out.println("Площадь круга равна " + s );
double sqrt = Math.sqrt(36);
System.out.println("Корень 36 равен " + sqrt);
}
Run! 
Площадь круга равна 366.24963
Корень 36 равен 6.0

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


Решение будет в след. статье : Синтаксис Java. Циклы


Продолжим с типами данных!
Осталось два типа char - символьный тип.

Char - Символьный тип (в официальной документации java - целочисленный тип). Так как она предназначен для работы с символами.
Существует таблица символов ASCII - каждому символу соответствует определённый код (число).


К примеру код символа 'X' - 88
Давайте напишем программу!

src,new,Java class,Char, точка входа в программу psvm
Создадим переменную Char
char ch1 = 88;

Присвоить значение типа char, можно двумя способами: Первый способ, использовать код из таблицы ascii

Создаём вторую переменную char, и будем использовать второй способ.
char ch2 = 'Y';

public class Char {
public static void main(String[] args) {
char ch1 =89;
char ch2 = 'Y';
}
}

В данном случае двум разным переменным присвоено одно и то-же значение, двумя разными способами.

Выведем обе переменные!
public class Char {
public static void main(String[] args) {
char ch1 =89;
char ch2 = 'Y';
System.out.println("ch1 - " + ch1 + " ch2 - " + ch2);
}
}
ch1 - Y ch2 - Y

В данном случае, одним переменным присвоено одно и то-же значение. Так как char является целочисленным, что с ним можно работать как с числом.

Увеличим значение ch1 на 1
ch1 += 1;
public class Char {
public static void main(String[] args) {
char ch1 =89;
ch1 += 1;
char ch2 = 'Y';
System.out.println("ch1 - " + ch1 + " ch2 - " + ch2);
}
}
ch1 - Z ch2 - Y

Последний примитивный тип, который осталось изучить, тип boolean

boolean - это логический тип данных, который может принимать одно из двух значений, либо true (истина), либо false (ложь)

Именно значения этого типа возвращается операциями сравнения.
Так-же как и в операторе if

Синтаксис Java. Типы данных. Примитивные типы

if(a>b){
....
}

Внутри как раз есть значение типа boolean. Ещё один пример с кондиционером!
Если температура больше 25, то включи кондиционер.

Создаём новый класс! src,New,java Class, Bool
public class Bool {
public static void main(String[] args) {
int temp = 26;
if (temp > 25) {
System.out.println("Кондиционер включен");
}
}
}
Кондиционер включен

Теперь создадим переменную типа boolean, которая будет хранить состояние в комнате жарко или не жарко.
Скачать курсы бесплатно
public class Bool {
public static void main(String[] args) {
int temp = 26;
boolean hot = temp > 25;
if (hot) {
System.out.println("Кондиционер включен");
}
}
}
Кондиционер включен

Если хотим, что бы действие выполнялось в том случае, если условие не выполняется, то есть данная переменная boolean hot = temp > 25; будет = folse, то перед переменной вставим ! (воскл.знак)
К примеру хотим выключить кондиционер, если в комнате не жарко if (!hot)
Переменной temp = 20;
"Кондиционер выключен"
public class Bool {
public static void main(String[] args) {
int temp = 20;
boolean hot = temp > 25;
if (!hot) {
System.out.println("Кондиционер выключен");
}
}
}
Кондиционер выключен

В данном случае. будет выполняться код в том случае, что данное условие не выполняется.

Операции сравнений с числами, которые мы применяли, были больше или меньше.
Всего их 6 : <, <=, >, >=, =, ==

== таким образом сравниваем, что две переменные равны между собой.

Значение, что две переменные не равны: !=

В проверку условий, можно вставлять сколько угодно условий, для этого нужно использовать несколько операторов и и или 
  • && - логическое И
  • || - логическое Или
Допустим хотим выключить кондиционер, если температура меньше 25, или время больше 23 часов. Для этого нужно создать дополнительную переменную.

Создадим переменную time которая будет хранить сколько сейчас времени, присвоим значение 24
int time = 24;
Создадим переменную типа boolean, назовём late (поздно) и присвоим значение, что время больше или равно 23 часам.
boolean late = time >=23;
Теперь можно добавить дополнительное условие. Теперь кондиционер выключается в том случае, если не жарко.
И добавим условие, что будет выключаться если поздно.
if (!hot || late )
И в данном случае кондиционер будет выключаться если уже не жарко или поздно.
Сделаем температуру 40 градусов и в данном случае уже жарко
int temp = 40;
Условие, что жарко если температура больше 25
boolean hot = temp > 25;
public class Bool {
    public static void main(String[] args) {
int temp = 40;
int time = 24;
boolean late = time >=23;
boolean hot = temp > 25;
if (!hot || late) {
System.out.println("Кондиционер выключен");
}
}
}
Кондиционер выключен

не смотря на то что в комнате уже жарко. кондиционер всё равно выключен, потому что уже поздно! Если используем символ || (или), то действие будет выполнено в том случае, если выполняется хотя бы одно из этих двух условий.

Если хотим что бы условие выполнялось в том случае когда выполняются оба условия, то есть конд. будет выключен только в том случае если в комнате уже не жарко и уже поздно, то нужно использовать символ && (b). 

public class Bool {
public static void main(String[] args) {
int temp = 40;
int time = 24;
boolean late = time >=23;
boolean hot = temp > 25;
if (!hot && late) {
System.out.println("Кондиционер выключен");
}
}
}
Так как поздно, значение выводит true, но в комнате сейчас жарко, то есть значение не жарко даёт false, поэтому блок действий не выполняется. Что бы он выполнился, должны быть выполнены оба условия.

Сделаем температуру 22 
int temp = 22;
Run!
Кондиционер выключен
надпись выводится, потому, что и не жарко и уже поздно.

Задание по дробным числам тут, по логическим сейчас сделаем.

Задача!
Написать программу, которая определяет. что делать в зависимости от времени суток и погоды. Если сейчас поздно, и время больше 23 или меньше 5 часов, то программа выводит значение сон.
Если сейчас не поздно и на улице хорошая погода, то программа выводит гулять. Если сейчас не поздно и на улице дождь, то программа выводит "Почитать книгу". Все условия необходимо вывести в отдельные переменные. и в данном задании не использовать конструкции else, что бы научиться комбинировать различные условия, так как с использованием else это будет слишком легко.

Создаём класс New,Java Class,WhatToDo
public class WhatToDo {
public static void main(String[] args) {
int time = 19;
boolean isGoodWeather = true;
boolean late = time >= 23 || time <= 5;
if (late) {
System.out.println("Спать");
}
if (!late && isGoodWeather) {
System.out.println("Гулять");
}
if (!late && !isGoodWeather) {
System.out.println("Читать книгу");
}
}
}
В данном случае время = 19, и это не поздно и на улице хорошая погода. Если всё правильно, увидим надпись Гулять.
Run!

Изменим на 3 часа ночи
int time = 3;
Run! Спать

Сделаем День, но погода будет плохая
int time = 15;
boolean isGoodWeather = false;
Run! Читать книгу

Следующая тема Циклы!

Отправить комментарий

Новые Старые
FL.ru – фриланс сайт удаленной работы. Поиск удаленной работы, фрилансеры.