У Java є два різні типи чисел:
-6, 0, 1, 25, 976 і -500000.-20.4, 0.1, 2.72, 16.984025 і 1024.0.У Java найчастіше використовують два числові типи: int і double.
int - це 32-бітове ціле число, а double - 64-бітове число з плаваючою комою.
Арифметичні дії виконують за допомогою стандартних арифметичних операторів.
Числа можна порівнювати за допомогою стандартних операторів порівняння (наприклад, 5 > 4 і 4 <= 5), а також операторів рівності (==) і нерівності (!=).
У Java є два типи числових перетворень:
Оскільки точність int менша, ніж у double, перетворення з int у double безпечне, тож це неявне перетворення.
Однак перетворення з double у int може призвести до втрати даних, тому воно потребує явного перетворення.
Найпростіша інструкція керування потоком виконання в Java - інструкція if-then.
Цю інструкцію використовують, щоб виконувати частину коду лише за певної умови, яка дорівнює true.
Інструкцію if-then визначають за допомогою конструкції if:
class Car {
void drive() {
// the "if" clause: the car needs to have fuel left to drive
if (fuel > 0) {
// the "then" clause: the car drives, consuming fuel
fuel--;
}
}
}
У наведеному прикладі, якщо в машині закінчилося пальне, виклик методу Car.drive нічого не зробить.
Інструкція if-then-else дає альтернативний шлях виконання на випадок, коли умова в конструкції if набуває значення false.
Цей альтернативний шлях виконання йде після конструкції if і визначається за допомогою конструкції else:
class Car {
void drive() {
if (fuel > 0) {
fuel--;
} else {
stop();
}
}
}
У наведеному прикладі, якщо в машині закінчилося пальне, виклик методу Car.drive викличе інший метод, щоб зупинити машину.
Інструкція if-then-else також підтримує кілька умов за допомогою конструкції else if:
class Car {
void drive() {
if (fuel > 5) {
fuel--;
} else if (fuel > 0) {
turnOnFuelLight();
fuel--;
} else {
stop();
}
}
}
У наведеному прикладі, якщо пального залишилося 5 або менше, машина поїде, але при цьому увімкнеться індикатор пального.
Коли пальне сягне 0, машина перестане рухатися.
У цій вправі ми будемо писати код, який аналізує виробництво на складальній лінії автомобільного заводу. Швидкість складальної лінії може бути від 0 (вимкнено) до 10 (максимум).
За найнижчої швидкості (1) щогодини виробляється 221 автомобіль. Зі зростанням швидкості виробництво зростає лінійно. Тож за швидкості 4 має вироблятися 4 * 221 = 884 автомобілі на годину. Однак вищі швидкості підвищують імовірність появи бракованих автомобілів, які потім доводиться вибраковувати. Наступна таблиця показує, як швидкість впливає на відсоток успішних автомобілів:
1 до 4: 100% успішних автомобілів.5 до 8: 90% успішних автомобілів.9: 80% успішних автомобілів.10: 77% успішних автомобілів.Попереду два завдання.
Реалізуйте метод CarsAssemble.productionRatePerHour(), щоб обчислити продуктивність складальної лінії за годину з урахуванням поточної швидкості лінії та відсотка успішних автомобілів:
CarsAssemble.productionRatePerHour(6)
// => 1193.4
Зверніть увагу, що повернене значення має тип double.
Реалізуйте метод CarsAssemble.workingItemsPerMinute(), щоб обчислити, скільки робочих автомобілів виробляється за хвилину:
CarsAssemble.workingItemsPerMinute(6)
// => 19
Зверніть увагу, що повернене значення має тип int.
Зареєструйтеся на Exercism, щоб вивчати й опановувати Java, а також 26 концепцій158 вправ та справжнє наставництво від людей, і все це безкоштовно.