#java #learning #challenge #відповідь
А правильна відповідь - X88 🙀
Чому? Бо в Java тернарний оператор визначає тип результату на основі типів своїх другого та третього операндів. Якщо типи цих операндів різні, то відбувається автоматичне приведення типів до найбільш загального типу, який може вмістити обидва значення. Наприклад, якщо char x та byte i, то приведеться результат до int: int r = false ? i: x; Тому що char - unsigned 16 біт (від 0 до 65,535), а byte - signed 8 біт (від -128 до 127). Ну а якщо boolean x та int i, то приведеться до Object.
Чи такі нюанси мають відношення до практичного значення. Мають 🙂 Просто, можливо, вам вони не зустрічались, та ви не робили або не бачили багів з цим. І це нормально, адже дійсно, як на мене, цей кейс не дуже поширений. Але, це нюанси мови Java. Знати їх чи ні - кожний вирішує сам для себе. Їх знання підвищує вашу "експертність" 😎 Їх незнання підвищує шанси написати код, який компілюється без помилок та ворнінгів, але при цьому може спрацювати невірно 🤷♂️ Тому висновок тут можна записати такий - слідкуйте, щоб типи операндів тернарного оператора були однакові, або легко та зрозуміло приводились до очікуваного типу.
#learnJava
👍 Ставте лайк і підпишіться, щоб отримати більше головоломок Java та пригод програмування. Щасливого кодування!
🪙☕ Купіть мені каву - допоможіть зібрати кошти для ЗСУ: https://www.buymeacoffee.com/ytkach
💬 Мій телеграм канал: https://t.me/tkach_channel
Слава Україні! 🇺🇦
Nesta página do site você pode assistir ao vídeo on-line Тернарний оператор duração hora minuto segundo em boa qualidade , que foi baixado pelo usuário Java Online Lessons 30 Março 2024, compartilhe o link com seus amigos e conhecidos, no youtube este vídeo já foi visto 1,427 vezes e gostou 43 espectadores. Boa visualização!